【问题标题】:ActiveMQ Running on AWS - EC2 instance, Producer Performance Improvement在 AWS 上运行的 ActiveMQ - EC2 实例,生产者性能改进
【发布时间】:2013-08-09 06:43:50
【问题描述】:

我目前正在处理一项任务,该任务要求我对 apache activemq 和 aws-sqs 之间的响应时间进行基准测试。

在我的发现中,我发现,activemq 生产者需要 35 秒 / 1000 条消息 [每个 120 字节] 消费者需要 250 毫秒 / 1000 条消息 [每个 120 字节]

我正在使用基于 Maven + Git + Java 的项目结构。我正在通过以下方式从 connectionfactory 创建会话:

cFactory.createSession(false, Session.AUTO_ACKNOWLEDGE);

连接是同步的,消息的可靠性很重要。有人能告诉我这种行为背后的逻辑或原因吗?

我怀疑生产者需要时间,因为它不仅要发送,还要等待运行在 ec2 上的 amq 服务确认它已记录消息这一事实。

请告诉我为什么制作人速度慢,我该如何改进。

【问题讨论】:

    标签: java tcp amazon-ec2 activemq


    【解决方案1】:

    您的怀疑是正确的,“它不仅要发送,还要等待在 ec2 上运行的 amq 服务确认它已记录消息这一事实。”

    尝试在一个事务中发送多条消息。 tx 中的消息无需等待确认即可发送。只有当您执行 commit() 时,客户端才会阻塞等待确认 tx 中的所有操作都已成功存储。

    【讨论】:

    • @chirino 我们又见面了,我们通过 activemq 频道交换了消息,我会接受这个答案来标记这个问题已关闭。再次感谢。
    猜你喜欢
    • 2013-05-04
    • 1970-01-01
    • 2010-10-19
    • 1970-01-01
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多