我有一个托管在 Heroku 上的 Rails 应用程序。我必须对 mySQL 数据库进行长时间的后端计算和查询。
我的理解是使用DelayedJob 或Whenever gems 调用后端进程仍然会对Rails(前端)服务器性能产生影响。因此,我想设置两个不同的 Rails 服务器。
第一个服务器用于前端(响应用户的请求),就像在常规 Rails 应用程序中一样。第二台服务器(也是 Rails 服务器)仅用于后端查询和计算。它只会从 mySQL 中读取,进行计算,然后将结果写入另一个 Redis 服务器。
我的感觉是,没有很多 Rails 开发人员这样做。他们更喜欢在 Rails 服务器上运行后台作业并根据需要添加更多工作人员。我的服务器结构是一个好的设计,还是矫枉过正?有什么我应该注意的陷阱吗?
谢谢你。