1.8 KiB
1.8 KiB
Announce Server
A Python library that announces a server to a host.
Installation
pip install announce-server
Development
To install the developer dependencies required for testing and publishing:
pip install -e .[dev,pub]
Build
To build the package, run:
rm -rf dist/ build/ .eggs/ .pytest_cache/ src/announce_server.egg-info/
python -m build --sdist --wheel
To publish:
twine upload dist/*
Test
To run the tests, call:
pytest
Usage
from announce_server import register_service
@register_service(name="server_name", ip="server_ip", port=8000, host_ip="host_server_ip", host_port=5000, retry_interval=5)
def your_function():
pass
Registry
The announce_server
CLI provides a simple way to start a registry server. The registry server keeps track of available services and periodically sends heartbeat messages to ensure that registered services are still active.
Command
announce_server start_registry [--address ADDRESS] [--port PORT] [--heartbeat_interval INTERVAL] [--heartbeat_timeout TIMEOUT]
Arguments
--address ADDRESS
: The IP address of the server. Default:0.0.0.0
.--port PORT
: The port number of the server. Default:4999
.--heartbeat_interval INTERVAL
: The interval between heartbeat messages in seconds. Default:5
.--heartbeat_timeout TIMEOUT
: The timeout for waiting for a response in seconds. Default:3
.
Example
To start the registry server with the default configuration, run:
announce_server start_registry
The full syntax is equivalent to:
announce_server start_registry --address 0.0.0.0 --port 4999 --heartbeat_interval 5 --heartbeat_timeout 3
To test connections, run:
announce_server start_client --host-ip 0.0.0.0 --host-port 4999