Мне нужно создать сетевой сервер на C ++ для торговли заявление. Этот сетевой сервер должен выполнять следующие задачи:
обрабатывать аутентификацию клиентов и предоставлять идентификатор сеанса для каждого сеанса .
обрабатывают заказы, исходящие от клиентов, и информируют клиентов об их исполнении.
обрабатывают другие запросы данных, запрошенные клиентами, и отправляют им данные обратно .
Я планирую использовать сетевую библиотеку Boost.Asio и буферы протокола Google для реализации сообщений, отправляемых от клиентов на сервер. Подходы, основанные на XML-RPC или SOAP, строго запрещены, так как задержка является большой проблемой.
У меня есть следующие вопросы к сообществу stackoverflow:
Можно ли реализовать эти сообщения с использованием буферов протокола ? Я также рассматриваю возможность отправки сообщений в библиотеку Boost serialization , чтобы реализовать это. Когда я смотрю на код, я чувствую себя более уверенным в реализации этого с помощью ускоренной сериализации, а заголовки Google protobuf выглядят слишком тяжелыми. Какой из этих методов будет а) более удобным в обслуживании и б) потребует меньше усилий? Я думаю, оба этих подхода будут работать на разных платформах.
Есть ли еще какая-нибудь сетевая библиотека, на которую я должен обратить внимание, кроме от Boost.Asio? Я считаю ACE немного устаревшей в том, что касается стиля кодирования C ++.
В конце концов я бы хотел, чтобы этот сетевой сервер работал на SSL, однако у меня нет опыта внедрения SSL. Сколько усилий потребуется для перехода на SSL позже. Следует ли мне начинать с SSL или его можно будет добавить позже?
Кто-нибудь знает о хорошем сетевом проекте с открытым исходным кодом, который мог бы реализовать аналогичный сетевой сервер с помощью Boost.Asio, чтобы вдохновиться ?