No downsides compared to database switches, only upsides. The thing you want to work out is how to execute this trigger since your service is remote:
- Java Mission Control via SSH tunnelling. You’ll need to specify extra Java properties to allow that.
- A custom script to make the call from the server itself. This is the approach I took in the article. Tooling takes a bit of time to build.
- Launch something like Hawtio on the server: http://hawt.io/ This is a very nice simple approach but you’ll need to secure access control to it. Needs Jolokia: https://jolokia.org/
- Use https://jolokia.org/ with your own administrative panel via REST. Where you want to abstract the low level details.
Choose #1 if your developers have access to production machines and know what they’re doing (small team, few apps).
Choose #2 if you DevOps and Dev are in close communication but Dev don’t have access to production.
Choose #3 if you have more applications running on the machine, maybe even several instances of the same app.
Choose #4 if you are delivering to a customer who has their own Ops team and need special reliable control of your stuff.
I think this will warrant a further article.
Databases shouldn’t really be used for configuration or management. But of course not all platforms support management facilities.