На мой взгляд, есть два основных подхода, которые вы увидите в дикой природе.
Файл конфигурации. Как нк. Как уже упоминалось, вы можете создать файл TOML, к которому могут обращаться все различные инструменты и приложения. Это хорошо, поскольку есть только один источник правды, а TOML очень удобочитаем. Минусы в том, что нужно найти TOML-парсер для вашего языка (хотя это не так уж сложно) и убедиться, что файл существует, когда скрипт / служба / все, что его ожидает. Я пошел по этому пути, и это не так уж и плохо, вы даже можете поместить файл в «облако» (NAS, общее хранилище данных, папка с широкими правами на чтение), и иметь его легко доступным, если вам нужно раскрутить больше, чемодин экземпляр службы.
Переменные среды. В последнее время мне понравился этот подход, так как это всегда минимальный объем конфигурации, который вы могли бы сделать, и практически любой язык имеет средства для доступа к переменным среды. Кроме того, в общедоступном текстовом файле нет конфиденциальной информации.
Для python вы бы назвали os.environ [MY_CONFIG_NAME] и presto, у вас есть информация о конфигурации.
Оба подхода являются общими и имеют широкую поддержку почти в каждомязык.
Насколько клиент, разделение сервера. Я стремлюсь сделать своих клиентов настолько «глупыми», насколько это возможно, а мои серверы - как можно более «умными».