首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >影响中间件消息传递软件性能的因素

影响中间件消息传递软件性能的因素
EN

Stack Overflow用户
提问于 2011-09-15 14:20:52
回答 1查看 146关注 0票数 2

我计划在我的web应用程序中集成消息传递中间件。现在,我正在测试不同的消息传递中间件软件,如RabbitMQ、JMS、HornetQ等。该软件提供的示例正在运行,但没有给出预期的结果。

那么,我想知道的是,哪些因素是提高绩效的责任,一个人应该注意?

为了提高中间件消息传递软件的性能,开发人员应该注意哪些方面?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-09-15 23:01:10

我是HornetQ的项目负责人,但我会试着给你一个通用的答案,可以应用于你选择的任何消息系统。

我看到的一个常见问题是,人们问为什么单一的生产者/消费者不能给你带来预期的性能。

当您发送消息并立即要求确认时,您需要等待:

  • 消息从客户端到服务器的传输
  • 消息保存在磁盘上
  • 服务器通过向client

发送回调来确认消息已收到

同样,当您收到一条消息时,您向服务器确认:

persisted

  • The
  • 客户端向服务器发送确认信息
  • 确认信息为

服务器发回一个回调,告知已实现回调

如果您需要确认所有的消息-发送和消息-确认,您需要等待这些步骤,因为您有一个硬件涉及持久存储磁盘和在网络上发送比特。

消息系统将尝试与许多生产者和消费者一起扩大规模。也就是说,如果有许多人在生产,那么他们都应该使用服务器上为所有消费者共享的可用资源。

有几种方法可以加快单个生产者或单个消费者的速度:

  • One是通过使用事务。因此,您可以最小化在磁盘上执行的块和同步,同时保留在服务器和网络上的往返。(这实际上在任何database)
  • Another上都是一样的,是通过使用回调而不是在消费者处阻塞。(JMS2提出了一个类似于HornetQ上的ConfirmationHandler的回调)。

另外:我认识的大多数提供商都会在他们的文档中有一个性能部分,其中包含对特定产品的要求和建议。您应该分别查看每种产品

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7426651

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档