Skip to main content

A simple python real-time remote configuration framework.

Project description

rtconfig

A simple Python lib for manage remote server configuration.

  • Configuration remote unified management center.
  • When the configuration changes, pushed to client in real time.

Installing

pip install rtconfig

Server deploy

You can start server directly by single process.

python -m rtconfig.server

Command options:

  • --host: server host
  • --port: server port
  • --auto-reload: if auto reload
  • --store-type: rtconfig server store type
  • --broker-url: rtconfig server broker url

Or you can start server multiprocess by Gunicorn.

gunicorn rtconfig.server:app -b 0.0.0.0:8089 -k alita.GunicornWorker -w 2

Login account

Both of initial user name and password is admin. If you want to change password or add new account, you need use command like this:

python -m rtconfig.cli update_user {name} {password}

Client connection

Create a new python module conf.py, then write code like this:

from rtconfig import RtConfigClient
client = RtConfigClient('demo',ws_url='ws://127.0.0.1:8089',config_module=globals())

So, you can use real time configuration like this:

conf.config_name

Configuration

You can create service.py python file in current directory.

Configuration options:

config name default description
DEBUG false debug mode
MAX_CONNECTION 1024 max client connections
STORE_TYPE json_file data store type
BROKER_URL data store broker url

Config data store method broker url

json_file

BROKER_URL = "~/rtconfig" (默认可不填)

redis

BROKER_URL = "redis://127.0.0.1:6379/0"

mongodb

BROKER_URL = "mongodb://127.0.0.1:27017/demo?connect=false"

Notes

  • json_file store type not support multiprocess deploy.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
rtconfig-0.1.6-py3-none-any.whl (874.8 kB) Copy SHA256 hash SHA256 Wheel py3
rtconfig-0.1.6.tar.gz (809.6 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page