java - HornetQ 嵌入式 : can I set paging options for dynamic addreses?

标签 java hornetq

我在嵌入式配置中使用 HornetQ,配置对象本身以编程方式创建。该应用程序支持动态地址创建。

我希望能够在创建新地址时设置某些选项:页面文件使用、最大页面文件大小、分页的内存阈值。根据the HornetQ documentation ,这需要按地址完成。

我已尝试使用新地址的设置更新我的配置对象,但服务器(已经启动)不使用这些新设置。

有没有办法在服务器启动后告诉服务器每个地址的设置?

或者,我可以告诉服务器在我启动之前自动寻呼所有地址吗?

最佳答案

发帖后很快找到答案:可以使用嵌入式服务器的分页管理器:

final AddressSettings addressSetting = new AddressSettings();
addressSetting.setMaxSizeBytes(10 * 1024 * 1024); // 10 MB
addressSetting.setPageSizeBytes(1024 * 1024);     // 1 MB

server.getPagingManager().getPageStore(new SimpleString(addressName))
                         .applySetting(addressSetting);

或者,所有 地址的设置可以在配置对象上设置(基于 this SO answer ):

final Configuration hornetConfig = new ConfigurationImpl();
// other configuration...

final AddressSettings addressSetting = new AddressSettings();
addressSetting.setMaxSizeBytes(10 * 1024 * 1024); // 10 MB
addressSetting.setPageSizeBytes(1024 * 1024);     // 1 MB

final Map<String, AddressSettings> addressing = new HashMap<String, AddressSettings>();
addressing.put("#", addressSetting); // the # pattern matches all addresses
hornetConfig.setAddressesSettings(addressing);

关于java - HornetQ 嵌入式 : can I set paging options for dynamic addreses?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10739717/

相关文章:

ssl - 如何在通过 JNDI 命名服务器连接时为 Hornetq 客户端指定本地自定义 SSL 信任库

jboss - 如何禁用 EAP 6 中的模块?

Java - 如何进行楼层划分?

java - 列表内的 HashMap 来处理我的文本文件

java - 如何爬上 TypeMirror 对象的层次结构树?

java util UUID 与 Hornetq UUID

java - 如何反向迭代嵌套多重映射

java - 设置标题背景 Vaadin 14 网格

java - 在 Spring 中嵌入 HornetQ

queue - 如何使队列在HornetQ 2.2.5核心客户端中持久化?