Was wondering about $subject Traditionally we have stored our product configs, be it carbon.xml, api-manager.xml, identity.xml, etc. at file level. Some configs, such as "port offset" are inherently bound to the server startup so it makes sense for them to be at file level, since they come into affect during the startup. But certain runtime configs actually get engaged only when a given feature is used. But having those configs at file level require a restart for the changes to take affect. In C4 API Manager avoided doing restarts for certain config changes, like adding mediation extensions, by storing them in the registry.
For C5 a reusable implementation can exist at each node which periodically reads the table(say once a minute) and updates the config values in memory. Products communicate with this config library to get the values of a given config. So eventually they will read the updated value in a short time. If we were to store at least certain configs at DB level there are several advantages. 1. Eliminate need for a restart for changes to take affect. I realize in C5 a restart is relatively cheap so this might not be a big deal, but you still need someone to initiate the restart after the config change. 2. Since the config DB table has a known structure a UI can be easily developed to do CRUD operations for config changes and used by all products. This is a lot more user friendly than asking users to change files. 3. We can provide a REST API to allow config changes to be done on the DB table alternatively. 4. Simplify dev ops by eliminating complicated puppet config templates that need to constantly maintained with new releases. 5. Since configs are in a central DB its easy to manage them since all nodes will read from the same table. 6. Configs can be backed up by simply backing up the table Doing this makes sense for certain use cases of API Manger, I'm sure there maybe similar benefits for other products as well. It may not make sense for all configs but at least for some that govern feature functionality its great to have. WDYT? -- Regards, Uvindra Mobile: 777733962
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture