Небольшой пример HTTP-сервера на сокетах с использованием поллинга событий ОС. А также пример TCP-сервера на asyncio-стримах.
После запуска работу http-сервера можно проверить при помощи утилиты telnet:
# Подключение к серверу
telnet 127.0.0.1 8888 # linux
open telnet 127.0.0.1 8888 # windows
После подключения сервер обрабатывает следующие команды:
hi # возвращает приветствие "Welcome!"
time # возвращает текущее время
echo # возвращает "echo"
info # возвращает некоторые параметры системы (cpu count, memory space, disk space)
quit # закрывает соединение
Работу tcp-сервера можно проверить аналогично через telnet:
# Подключение к серверу
telnet 127.0.0.1 8888 # linux
open telnet 127.0.0.1 8888 # windows
После запуска сервер работает в режиме echo. Каждые 2 секунды возвращает время и количество активных подключений. Если время простоя более 5 сек. - возвращается предупреждение с обратным отсчетом. Если время простоя превысит 10 сек. - соединение автоматически разрывается.