这是一个处理许可证激活的Rails应用程序,使用外部服务进行处理。外部服务有时会延迟Rails请求的处理时间超过30秒,这将使前端返回错误(我正在运行heroku,因此最大为30秒)。
我尝试使用ActiveJobs和默认的rails async适配器(Rails 5),我可以看到它在Heroku上“开箱即用”。我一直在阅读,应该使用另一个Web进程,例如Redis,但如果后台作业应该在请求完成后立即执行,并且只是连接可能更慢的另一个API,那么使用默认的异步机制是否那么糟糕?
我可以看到这在一个进程线程中处理,但我不认为一个如此简单的任务需要再开启另一个web进程。