Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javamysql表_Java_Mysql_Sql_Database - Fatal编程技术网

javamysql表

javamysql表,java,mysql,sql,database,Java,Mysql,Sql,Database,我有两个java进程,即票证创建和计费守护进程。这两个进程使用相同的MySQL Innodb表“计费”。票证创建主要创建计费票证,包括用户的插入/更新票证。计费守护进程检索票据,然后将计费发送给用户,最后将结果(成功/失败)更新到“计费”表。每天都会为成千上万的用户创建账单,如果今天创建账单,则称为“新账单”,之前创建的其他账单称为“旧账单”。我面临的问题是,这两个进程使用同一个表,而插入/更新记录的速度非常慢。我试过的解决方案 1. Stopped billing while ticket c

我有两个java进程,即票证创建和计费守护进程。这两个进程使用相同的MySQL Innodb表“计费”。票证创建主要创建计费票证,包括用户的插入/更新票证。计费守护进程检索票据,然后将计费发送给用户,最后将结果(成功/失败)更新到“计费”表。每天都会为成千上万的用户创建账单,如果今天创建账单,则称为“新账单”,之前创建的其他账单称为“旧账单”。我面临的问题是,这两个进程使用同一个表,而插入/更新记录的速度非常慢。我试过的解决方案

1. Stopped billing while ticket creation: I got late to bill users and billing 
success rate got slow. 
当这两个过程都被使用时,票证的创建变得非常缓慢,并且账单主要是针对“旧票证”而不是“新票证”发送的,在这种情况下,失败率变得很高

请建议,我如何来解决这个问题?创建“账单”的子表和主表可以解决问题吗?还是我必须创建另一个表?或者有没有合适的解决办法

Database is in Amazon RDS using MySQL Innodb. Please adivse urgently as 
my billing rate is getting really slow. 

提前谢谢

这通常是事务吞吐量/并发性问题。例如,当选择和修改票证时,你需要考虑你锁定了多少个对象以及需要多长时间。因为当发生这种情况时,更新事务将不会运行并等待锁定的资源完成


微调事务,不要锁定超出需要的任何对象。如果您确实需要锁定它们,请确保尽快将其释放。

您需要了解为什么数据库的速度较慢,并对您的查询运行EXPLAIN。从您问题的细节来看,我们无法判断最大的问题是大小还是并发访问。可能只是向某些列添加索引可以解决性能问题。如果大小是最大的问题,那么可能是一个解决方案。