在一个实例中具有 4 GB RAM 的专用服务器中可以运行的最大查询数是多少。
我正在运行一个可能包含近十万个查询的 cron 作业。它的查询在一个循环中运行,查询是选择 3 个具有整数字段的字段的简单查询。
请多多指教
最佳答案
42,当然。第 43 个查询打破了它。不,真的:-)
查询次数没有上限 -- 循环可以运行一整天。除非有某种形式的并行代码(即线程),否则来自 cron-job 的每个查询 将连续运行(发送查询、处理结果、发送查询、处理...),因此 就内存要求而言,查询总数是无关紧要的。
但是, 存在一个潜在的(如果绝对荒谬的)限制更新/插入/删除在单个事务中运行。这是因为事务需要能够回滚。 (我不确定这是否受存储、主内存或其他方面的限制。)
快乐编码。
由于这是一项长时间运行的作业,请注意:如果 cron-job“遇到”下一个 cron-job(未及时完成),则可能会导致严重问题,例如同一个“工作”可能会执行多次!如果 cron-jobs 不断相互级联,这种丑陋的情况很快就会失控:每个并发运行的“作业”都会给数据库服务器带来更多负担。
关于mysql - 查询的最大数量是多少,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5879052/