本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长


+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

将 Heroku Cedar 模型映射到多线程应用程序

发布于2024-12-11 17:31     阅读(506)     评论(0)     点赞(9)     收藏(0)


我并不真正理解 Heroku 的 dyno 和工作进程模型,因为它与单个进程但多线程的基于 Java 的服务器有关。

例如:我如何知道(对于单个测功机)有多少处理器可用于我的后台线程?我是否需要使用类似 RabbitMQ 的东西并为每个后台处理任务创建一个单独的进程(应用程序)并在服务器和这些进程之间进行通信?对于使用线程缓存执行器的某些计划任务来说,这似乎有点过头了。是否应该将所有 Future 更改为进程间 Future?

我想这可以归结为一个问题。我是否不再需要编写多线程服务器并扩展可用于服务器进程的处理器以适应我的线程活动?或者我是否需要重构我的架构以使用单独的进程进行并发?如果是前者,我需要工作程序还是只需要多个测力计?

谢谢。


解决方案


Heroku 支持多种并发模型,因此如何构建应用程序完全取决于您。您可以访问完整的 Java 堆栈,因此如果某些东西更适合在您的 Web 进程中作为多个线程运行,您绝对可以这样做,或者您始终可以在 RabbitMQ 或 Redis 等程序上排队作业,并在单独的工作机上处理它们。如果工作量较少且与您的 Web 请求成比例,则多线程更简单且有意义,因为它将与 Web 机一起扩展;但是,如果工作量很大、不成比例和/或需要独立扩展,那么将其分解为单独的进程会更好。

Heroku 最初只是一个 Ruby 平台,它不具备与 Java 相同的线程功能,因此使用单独的工作器测力计对 Ruby 来说更为重要,这反映在某些文档和示例中,这可能会让您感到困惑。幸运的是,使用 Java,您可以拥有更多可用的选项,并可以使用最适合手头工作的选项。



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:http://www.javaheidong.com/blog/article/694590/410cdf408163aa87f495/

来源:java黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

9 0
收藏该文
已收藏

评论内容:(最多支持255个字符)