这样做的最佳做法是什么?基本上我使用的是RabbitMQ,它有多少并发进程的设置,我将WAR部署到测试服务器,并希望通过简单地更改值并避免每次都生成新的WAR文件来优化此数量的并发。
我正在考虑读取属性文件,我只能更改值并重新启动服务器?
例如:在我的config.groovy文件中
rabbitmq {
connectionfactory {
username = 'groovy'
password = 'groovy'
hostname = 'localhost'
}
queues = {
processTerritory exclusive: true
}
concurrentConsumers = **READ INTEGER VALUE FROM A FILE**
}
答案 0 :(得分:2)
您可以从Config.groovy导入外部配置文件。 Config.groovy中已经注释掉了代码,显示了如何执行此操作:
grails.config.locations = [ "classpath:${appName}-config.properties",
"classpath:${appName}-config.groovy"]
假设您的应用程序名称为foo,您现在可以在类路径的某处放置foo-config.groovy或foo-config.properties。对于Tomcat,您可以将文件放在lib文件夹中。
也涵盖了这一点然后,在foo-config.groovy中你可以输入:
rabbitmq.concurrentConsumers = 10
或任何适合该服务器的值。
Grails 3
Grails 3默认不包含此功能,但您可以使用external-config plugin