2012-04-03 27 views
3

Was ist die beste Vorgehensweise, um dies zu tun? Im Grunde verwende ich rabbitMQ und es hat eine Einstellung für wie viele gleichzeitige Prozesse ich als WAR auf einem Testserver bereitstellen möchte und möchte diese Anzahl von Contrulents optimieren, indem ich einfach den Wert ändere und jedes Mal neue WAR-Dateien erstelle.Grails Config.groovy Datei aus einer Datei lesen

Ich denke, eine Eigenschaftendatei zu lesen, die ich nur den Wert ändern und Server neu starten kann?

Ex: in meiner config.groovy Datei

rabbitmq { 
    connectionfactory { 
     username = 'groovy' 
     password = 'groovy' 
     hostname = 'localhost' 

    } 
    queues = { 
     processTerritory exclusive: true 
    } 
    concurrentConsumers = **READ INTEGER VALUE FROM A FILE** 
} 

Antwort

2

können Sie externe Konfiguration importieren Dateien aus Config.groovy. Es ist bereits kommentiert out Code in Config.groovy, das zeigt, wie es geht:

grails.config.locations = [ "classpath:${appName}-config.properties", 
         "classpath:${appName}-config.groovy"] 

können sagen, Ihre Anwendungen Name ist foo, können Sie jetzt setzen foo-config.groovy oder foo-config.properties irgendwo auf der Klassenpfad. Für Tomcat können Sie die Datei in den lib-Ordner stellen.

rabbitmq.concurrentConsumers = 10 

oder für den Server geeigneten was Wert ist:

Es ist auch in der dann in foo-config.groovy können Sie setzen

user documentation bedeckt.

Grails 3

Grails 3 enthalten diese Funktion nicht standardmäßig, aber Sie können die external-config plugin

verwenden