- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 HornetQ 发送电子邮件。
文件附件使用对象存储系统进行带外传输(不作为消息的一部分)。这会增加一些开销,我想通过将小文件直接放入消息属性来避免这些开销。
我知道我可以发送巨大的消息体,但是对于大文件,对象存储效果很好,这是关于小文件的,如果可以的话,按属性值传递会非常方便。
消息属性值有哪些注意事项?我可以将它们做成 100K 字节数组吗?这会减慢速度(甚至中断)吗?
最佳答案
header 、属性和正文缓冲区本身都以相对简单的过程组合到消息的整体缓冲区中,因此从这个角度来看,不应该存在重大的性能问题。您可以在这里看到核心实现: https://github.com/hornetq/hornetq/blob/master/hornetq-core-client/src/main/java/org/hornetq/core/message/impl/MessageImpl.java
其中一个考虑因素是您的消费者窗口大小,默认情况下仅为 1MB。这是消费者上缓冲的大小,因此,如果您发送接近此大小的消息,那么当您在消费者处等待数据时,读取性能可能会慢得多。这可以使用 consumer-window-size
参数进行更改。请参阅http://docs.jboss.org/hornetq/2.4.0.Final/docs/user-manual/html/flow-control.html#d0e4023了解更多信息。
根据评论,您可能还想增加日志大小和缓冲区大小。看看你可能已经接近极限了。您可能希望将日志缓冲区大小设置得更大,以确保获得一些空间,并且可能还需要调整日志本身的大小。 http://hornetq.sourceforge.net/docs/hornetq-2.1.1.Final/user-manual/en/html/persistence.html#configuring.message.journal.journal-buffer-size和 https://developer.jboss.org/thread/154423
关于performance - HornetQ 中的消息属性可以有多大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29091759/
有没有办法在同一个虚拟机中启动多个 HornetQ 嵌入式代理?例如,在同一进程中运行且完全不相关的两个独立应用程序。 如果我尝试注册第二个 EmbeddedJms 实例,而一个实例已经在运行,这就是
我正在尝试用我自己的测试项目重新创建 HornetQ 示例。但是我遇到了类加载器问题。显然,我缺少文档中未指定的一些依赖项。 文档让我添加 hornetq-core-client.jar netty.
如何使用 HornetQ 以编程方式创建 JMS 主题和队列? 最佳答案 http://docs.jboss.org/hornetq/2.2.14.Final/user-manual/en/html/
我构建了一个 Spring JMS 解决方案,该解决方案是针对 JBoss 7.1.1 和外部 HornetQ 实现 2.2.1.4 构建的。此连接并成功运行。 但是我现在使用 EAP6,并尝试连接到
(在 11.11.11 编辑,底部编辑) 我有两个运行 HornetQ(2.2.5 AS7 版)服务器的 JBoss AS 6.1 服务器。 让我们称另一个为 CLIENT,另一个为 MASTER。
我正在尝试运行一本书(HornetQ Messaging Developers Guide)中的一个简单的 HornetQ 示例,但收到错误消息。我没有使用maven,因为我想坚持使用书中给出的示例。
我使用 SBT 0.13.1 . 当我添加 HornetQ 作为我的依赖项时: libraryDependencies += "org.hornetq" % "hornetq-server" % "2
我发现在我们的实际环境中经常发生以下异常: 2013-01-08 00:09:45,886 ERROR [org.jboss.aspects.tx.TxPolicy] (Thread-70534 (H
我在带有 hornetQ 的 ubuntu 上使用 jboss AS 6 Final 我使用管理面板在名为 Message Buffer Queue 的服务器上创建了一个新队列。 我收到以下错误: U
我正在使用 HornetQ 发送电子邮件。 文件附件使用对象存储系统进行带外传输(不作为消息的一部分)。这会增加一些开销,我想通过将小文件直接放入消息属性来避免这些开销。 我知道我可以发送巨大的消息体
我已阅读 HornetQ 常见问题解答,但找不到任何相关内容。我正在使用 HornetQ 2.2.5,它包含一个错误(是的,只有一个;)。根据这篇文章https://community.jboss.o
我已经配置了hornetq来处理大消息,但是如果客户端没有启动,大消息目录就会变得太大,消耗整个磁盘空间 请帮助弄清楚如何在邮件发送后删除或清理大型邮件文件夹? 也未在 jboss/server/de
我在独立模式下使用默认配置运行 hornetQ,我可以从本地系统连接到它,如果我想从另一个系统连接,必须更改哪些配置才能实现?! 最佳答案 您首先需要定义另一个系统的含义,您是指另一个 HornetQ
对于当前的项目,我尝试使用 JBoss 7.1 和 HornetQ (JMS) 设置以下场景,我认为这是一个相当常见的用例:有三个应用程序服务器。多个MDB应各自处理一个冗长计算过程的分解片段,任务应
我正在尝试独立运行 HornetQ 服务器。但我不知道该怎么做,我下载了 hornetq-2.0.0.GA 并使用 build.sh 启动服务器,但我希望通过 java 代码启动 HornetQ 服务
我想以某种方式延迟整个消息组的消息。 问题是,属于每个消息组的所有消息都必须按照它们发布的顺序进行处理。如果其中一条消息无法被使用 - 我们希望延迟它并延迟同一消息组中的其余消息。我不想阻止消费者 -
我使用 HornetQ 作为队列提供程序,因为它具有持久性功能。但是,在我重新启动应用程序后,队列中的所有消息都丢失了。可能是配置问题? 代码如下: // Step 1. Create the Con
我使用 EJB 来实现命令模式。 EJB 是执行业务逻辑的命令服务。我知道在 J2EE 中 EJB 管理事务以及事务超时。
我正在开发一个使用 HornetQ 作为消息传递服务器的应用程序。在 HornetQ 启动时,我总是收到与 HornetQ live lock 相关的错误。 我针对这个特定问题进行了研究,但无法得出相
我正在尝试将 ActiveMQ-CPP 与 HornetQ 一起使用。我正在使用 ActiveMQ-CPP 捆绑示例,但我很难使用它。生产者工作得很好,但消费者给我以下信息: * BEGIN SERV
我是一名优秀的程序员,十分优秀!