如何处理数以千计的后台工作?

时间:2014-06-10 08:32:28

标签: java algorithm quartz-scheduler

我们使用quartz作为后台服务器,其目的是通过应用一些业务规则来系统地聚合数据。从本质上讲,我们有三个后台工作,可以解雇更多的工作。由于我们是一个SaaS应用程序,所以我们有多个租户,所以我们最终得到(租户*(3 + m * n))工作。这些是通过10个线程触发的,并且触发器无限重复,因为我们要求它们由于业务限制而每小时聚合一次。请注意,一旦这些作业在服务器启动时被触发,它们将保持一致,即不会有新的作业。因此,最终的工作数量如上所述。

每个作业都会攻击数据库,其中一些作业也可能需要一秒钟以上。

你们中的任何人都可以提出最好的扩展方法。我们可以考虑重组代码,这个代码更像是POC,我们真的需要SCALE !!!

---------------------- EDIT ---------------------- 根据迄今收到的答复,我想使问题更简洁。我们遵循这种方法,即使用10个线程,我们在服务器启动时安排多个石英作业,并无限期地触发它们每小时运行一次。这里的任何成员都有建议如何以更有效的方式处理这些问题,石英调度程序是最好的方法还是使用其他一些工具/框架,也许是Spring批处理..

0 个答案:

没有答案