У меня есть приложение на python с пользовательским основным циклом (я не верю, что детали важны). Я хотел бы интегрировать простой неблокирующий веб-сервер в приложение, которое может анализировать объекты приложения и, возможно, предоставлять интерфейс для управления ими. Какой лучший способ сделать это?
Я бы хотел избежать всего, что использует потоки. Идеальным решением будет сервер с «степпинговой» функцией, которая может быть вызвана из моего основного цикла, выполнить свою задачу, а затем вернуть управление программой до следующего цикла.
Чем выше решение, тем лучше (хотя что-то такое монолитное, как Джанго, может быть излишним).
В идеале решение должно выглядеть так:
def main():
"""My main loop."""
http_server = SomeCoolHttpServer(port=8888)
while True:
# Do my stuff here...
# ...
http_server.next() # Server gets it's turn.
# Do more of my stuff here...
# ...