Добрый вечер. Встала у меня задача управлять звездолетом, вот например хочу я ему дать команду, перезапусти двигатель. Земля то вращается и следовательно в моей модели звездолету проще обращаться на землю за новыми командами. Вот обратился звездолет к земле и получил команду с id:228 и кодом 14, что означает перезапуск двигателя, запустился цикл перезапуска на звездолете, но криворукий программист во всем виноват (как всегда) и все грохнулось и начал сам бортовой компьютер перезагружаться и вот опять звездолет ждет удобного момента что бы получить команды с земли. А что делать? Может быть после получения команды сохранять ее в энергонезависимую память и вести собственный список команд полученных. А ведь те команды что уже исполнил надо квитировать, что бы они канал связи не забивали. Причем звездолетов у меня несколько и каждый опрашивает сервер на наличие новых команд и отсылает телеметрию. Соответственно вопрос, к какому классу задач относится разработка подобной системы? Где про все эти очереди команд, квитирование, приоритеты почитать? С чего подступиться, как подойти к задаче.