gpt4 book ai didi

grails - 如何在activemq grails app中配置tempusage

转载 作者:行者123 更新时间:2023-12-02 14:58:00 24 4
gpt4 key购买 nike

我正在使用 jms 在两个应用程序之间发送消息,这是接收器应用程序的代码

xmlns amq:"http://activemq.apache.org/schema/core"

amq.'broker'(
useJmx: '${grails.jms.useJmx}',
persistent:'${grails.jms.persistent}',
dataDirectory: '${grails.jms.dataDirectory}'){
amq.'transportConnectors'{
amq.'transportConnector'(uri:'${grails.jms.transportConnector}')
}
}

amqConnectionFactory(ActiveMQConnectionFactory) {
brokerURL = '${grails.jms.brokerUrl}'
}

jmsConnectionFactory(SingleConnectionFactory) { bean ->
targetConnectionFactory = ref(amqConnectionFactory)
}

我能够运行该应用程序,但出现类似错误
“存储限制为 102400 mb,而数据目录:/my-activemq-data/localhost/KahaDB 只有 7438 mb 的可用空间”在控制台中。我只想配置临时内存使用情况,任何人都可以帮我解决这个问题。谢谢

最佳答案

您在使用 https://grails.org/plugin/activemq插入?
如果是这样,我将这个功能精确地添加到插件中。
该插件允许以下配置选项(只需将它们放在您的 Config.groovy 中):

grails.activemq.active = (true|false) default to true
grails.activemq.useJms = (true|false) default to false
grails.activemq.startBroker = (true|false) default to true
grails.activemq.brokerId = (string) default to "brokerId"
grails.activemq.brokerName = (string) default to "localhost"
grails.activemq.persistent = (true|false) default to false
grails.activemq.port = (int) default to 61616
grails.activemq.tempUsageLimit = (size in bytes) defaults to 64Mb
grails.activemq.storeUsageLimit = (size in bytes) defaults to 64Mb

如果您不使用该插件,也许您应该:)

作为引用,这是我用于大多数项目的 resources.groovy 文件(它依赖于基于应用服务器 jndi 的 JMS 服务进行测试和生产,并使用 activemq 进行开发):
import grails.util.Environment
import org.apache.activemq.ActiveMQConnectionFactory
import org.springframework.jms.connection.SingleConnectionFactory
import org.springframework.jndi.JndiObjectFactoryBean

beans = {

switch(Environment.current) {
case Environment.PRODUCTION:
case Environment.TEST:
jmsConnectionFactory(JndiObjectFactoryBean) {
jndiName = "java:/ConnectionFactory"
}
break

case Environment.DEVELOPMENT:
jmsConnectionFactory(SingleConnectionFactory) {
targetConnectionFactory = { ActiveMQConnectionFactory cf ->
brokerURL = 'vm://localhost'
}
}
break
}
}

在将 ActiveMQ 与 activemq 插件一起使用时,我遇到了与您相同的问题,因此我提出了一个拉取请求,添加了这些配置选项并将它们设置为 64Mb 的更合理的默认值(用于开发)。

如果您使用该插件,您只需将其添加到您的 BuildConfig 插件部分,它应该可以正常工作而无需进一步配置,只需 config/spring 中的 resources.groovy。

无论如何,如果您需要其中的任何一个,我描述的选项应该进入 Config.groovy。

关于grails - 如何在activemq grails app中配置tempusage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33690418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com