A Python worker running over asyncio
python 3.8+
pip install aioworkerimportasynciofromaioworkerimportService, Workerasyncdeftask_1(loop):
whileTrue:
print('Hello world')
awaitasyncio.sleep(2)
if__name__=='__main__':
# Run the server using 1 worker processes.Worker(tasks=[task_1]).run(workers=1)or run tasks and the webserver
importasynciofromaioworkerimportService, Workerasyncdefsleeping(loop):
whileTrue:
print('Sleeping for 2 seconds...')
awaitasyncio.sleep(2)
asyncdefon_client_connect(reader, writer):
""" Read up tp 300 bytes of TCP. This could be parsed usign the HTTP protocol for example """data=awaitreader.read(300)
print(f'TCP Server data received: {data}\n')
writer.write(data)
awaitwriter.drain()
writer.close()
if__name__=='__main__':
# Run the server using 1 worker processes.Worker(
tasks=[sleeping],
web_server_config={
'client_connected_cb': on_client_connect,
},
)).run(workers=1)ctrl+c
| Variable | Default |
|---|---|
| TCP server host | 0.0.0.0 |
| TPC server port | 8888 |
- Clone this repo
- Run
poetry install - Test using
./scripts/test - Lint automatically using
./scripts/lint