我有一个基于symfony的web应用程序,它运行在mongodb和mysql后端。该应用程序的主要内容是每个用户都有一个python脚本,每天在cronjobs上运行4到12次,并填充mysql和mongodb数据库。该脚本需要1.5分钟到2分钟才能执行。目前,cronjob按顺序运行。这意味着脚本执行作业并等待作业在执行下一个作业之前结束。当我的Web应用程序有一个新用户时,cronjobs会在一段时间内自动创建。一天24小时,我可以运行有限数量的cronjobs,用户数量有限(约250-300)
如果我想在我的网络应用程序上托管1000到100万用户,我还需要做什么?我可以在多线程的基础上运行我的脚本吗?这意味着不是等待工作完成,而是同时启动数百个工作。通过这种方式,我可以以指数方式增加用户群。
但是,mongodb和mysql能够支持的并发性是什么?我可以并行执行多少个工作?我需要考虑哪些系统因素才能增加用户群?我是否需要在我的应用程序中添加更多计算机?