gpt4 book ai didi

Java MySQL 表

转载 作者:行者123 更新时间:2023-11-30 01:35:59 27 4
gpt4 key购买 nike

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

1. Stopped billing while ticket creation: I got late to bill users and billing 
success rate got slow.

当使用这两个过程时,票证创建变得非常慢,并且账单主要针对“旧票证”而不是“新票证”发送,而“新票证”的失败率很高。

请建议,我该如何解决这个问题?创建“Billing”的子表和主表可以解决吗?或者我必须创建另一个表吗?或者有什么合适的解决办法吗?

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

提前致谢..

最佳答案

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

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

关于Java MySQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16888016/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com