With asyncio we ought to be able to juggle multiple things going on with one process. For instance, some of the weather radar jobs could be consolidated with the pinger, defend, wake-up, etc.
There are all kinds of possible problems such as:
mem leaks
cpu-heavy tasks such as video generation could hang up the process,
i'm not worried about a crashing process (we have restart) but an asyncio-based system can have mem leaks
latency: last thing I want is for events to get hung up. we need to be hyper-responsive to turn the lights on on command, defend or the pinger can wait a few seconds.
Having everything running under the same python environment makes it easy. The big
conceptual issue is how to pack up processes like the above so they can coexist in an event loop.
With asyncio we ought to be able to juggle multiple things going on with one process. For instance, some of the weather radar jobs could be consolidated with the pinger, defend, wake-up, etc.
There are all kinds of possible problems such as:
Having everything running under the same python environment makes it easy. The big conceptual issue is how to pack up processes like the above so they can coexist in an event loop.