Global Variables vs Config Files

Hello Everyone,

Good day.

I just want to get your opinion what are the advantages / disadvantages in getting the variable from a Global Variable versus a Config File?

Thanks!

These are my thoughts if we are only talking about IS Global Variables VS Custom Config Files

1> Its a good feature to use to store your project configuration in one place (dedicated User Interface) and IS does provide an option to retrieve the same during runtime, use global variables pipeline substitution.
2> Since it’s an OOTB feature you do not have to create custom config files and supporting flow services to write and read the key value pairs
3> They (both) not cluster aware and you have to maintain the same set of key-value pairs on all the nodes
4> If you intend to use config files, you have to create a custom config file and maintain them in the package and write underlying services to create, write, read key-value pairs or you just create the file and manually add key-value pairs and then retrieve them programmatically.
5> You have to build your own UI for custom config files to store and manage the config values

I would suggest either use service caching capability or Terracotta cache to store the config values.

Let me know if you have any further questions.

Hi Eric,

I agree with Mahesh except I prefer to store the config files in a subdirectory of IntegrationServer/config dedicated to my application instead of placing them in the packages.

The benefit is that the config files won´t be overwritten during deployments (esp. full package deployments) when the config files contain values specific per environment (i.e. Dev, Test, QA, Prod).

Additional benefit is that this subdirectory will be backed up automatically to IntegrationServer/config/backup upon each successfull start of IS.

Regards,
Holger

Using global variables becomes a bit unwieldy as the number of variable grows. A robust naming scheme would be a must. (Another thread asks about sorting the list in an order other than by created date.)

I would avoid using the global vars facility for generalized configuration and instead use config values (key/value pairs in properties file style, or XML, or JSON) or possibly the Terracota cache Mahesh suggests – pros and cons to those 2 approaches to be considered.

1 Like

Hi,

as an additional sorting option beside date I would prefer a sorting by name.

In my prject we are currently using properties files (key/value pairs) for simple configurations as well as some XML-based configuration file for more complex or structured configurations.

Regards,
Holger

1 Like