我并不真正了解Heroku的dyno和工作进程模型,因为它涉及单个进程但是是基于多线程的基于Java的服务器。将heroku雪松模型映射到多线程应用程序
例如:我如何知道(对于单个测试仪)有多少处理器可用于我的后台线程?我是否需要使用像RabbitMQ这样的东西,并为每个后台处理任务创建一个单独的进程(app),并在服务器和这些进程之间进行通信?对于使用线程缓存执行程序的某些计划任务似乎有点矫枉过正。所有期货是否应改为进程间期货?
我想它归结为这个问题。我是否可以不再编写多线程服务器,并将可用于服务器进程的处理器扩展为适应我的线程活动?还是我需要重构我的架构以使用单独的进程进行并发?如果前者,我需要工人还是只需要多个工具?
谢谢。
谢谢!我很难找到如何配置这些线程模型。你能指给我一份文件吗? –
这里没有任何Heroku特定的,所以任何关于Java并发的教程都可以工作。这是一个很好的开始:http://www.vogella.com/articles/JavaConcurrency/article.html。它贯穿整个领域,包括低级线程和锁,你可能想在实践中避免使用java.util.concurrent包中的新抽象,但仍然很好理解它们,因为它们是基础的整体系统。如果你想要与演员进行更高层次的抽象,请看[Akka](http://akka.io/)。 – ryanbrainard
...如果您确实想看Heroku特定的多测试网页/工作者方法如何在Heroku上与Java一起使用,请查看https://devcenter.heroku.com/articles/asynchronous-web-worker -model-using-rabbitmq-in-java – ryanbrainard