Я думаю о написании серверного приложения - по аналогии с MySQL или Apache.
Основные требования:
- Клиенты будут связываться с сервером через TCP / IP (сокеты)
- Сервер создаст новый дочерний процесс для обработки запросов (аля Apache)
В идеале я хотел бы использовать библиотеки BOOST, а не пытаться изобретать свои собственные. Где-то должен быть код, который делает большую часть того, что я пытаюсь сделать, - чтобы я мог использовать его (или хотя бы его часть в качестве отправной точки), может кто-нибудь указать мне полезную ссылку?
В случае (надеюсь маловероятного) отсутствия кода, который я мог бы использовать в качестве отправной точки, может ли кто-нибудь указать наиболее подходящие библиотеки BOOST для использования - и общее руководство о том, как действовать.
Мое главное беспокойство - как узнать, когда один из детей разбился. AFAIK, есть два способа сделать это:
- Использование сердцебиения между родителем и детьми (это быстро становится грязным и вводит больше вещей, которые могут пойти не так)
- Каким-то образом обернуть процесс порождения параметром тайм-аута - но это глупый подход, потому что, если ребенок выполняет трудоемкую работу, родитель может ошибочно думать, что ребенок умер
Каков наилучший способ информирования родителей о том, что ребенок умер?
[Изменить]
Кстати, я занимаюсь разработкой / запуском / развертыванием в Linux