Alan DeKok wrote:
Nicolas Baradakis wrote:
I like when the things are simple: edit the config files with your favorite editor, and run a command to reload the server. (kill -HUP or something else)
It's nice, but can result in ~1s hiccups when everything gets reloaded. [...]
Indeed. At some point we need to make a tradeoff between a solution that is simple for the administrator but not very efficient, and a complex configuration mechanism that allow extensive control on a running server. (personally I tend to prefer the former solution)
Translating plain text files to SQL has a few issues issues, too. When you update a value on a running server, its runtime config is out of sync with its config files. Therefore I don't know how we could make sure that the "humanly readable" version is relevant or not.
The "RTA" program I originally pointed to does this by dumping SQL commands to a file. When the file is read in, it re-creates the running configuration. See also Mercurial's "revlog" format for how to do high-performance, safe logging of a changing configuration.
The program will be able to store its configuration and restart with the same parameters. But I think the file that is dumped isn't in a humanly readable format. Therefore if the administrator wants to see what the running server is actually doing, he may have to run a few SQL queries.
But if all you're doing is adding one realm... why the heck do you want to reload the other 3000 realms to add just one? That doesn't make sense. It's an O(N^2) solution to a problem that should be O(1).
I agree. But large sites should have multiple servers, therefore perhaps they could address the issue differently. -- Nicolas Baradakis