Я создаю распределенное приложение на С++, которое должно выполнять много сериализации и десериализации простых структур данных, которые передаются между различными процессами и компьютерами.
Я не заинтересован в сериализации сложных иерархий классов, но больше от отправки структур с несколькими простыми элементами, такими как число, строки и векторы данных. В векторах данных часто может быть много мегабайт. Я обеспокоен тем, что способы работы с текстом /xml слишком медленны, и я действительно не хочу писать это сам, поскольку проблемы, такие как строковое кодирование и число endianess, могут сделать его более сложным, чем это выглядит на поверхности.
Я немного искал буферы протокола и boost.serialize. Согласно протоколу, буферные буферы, похоже, очень заботятся о производительности. Boost выглядит несколько более легким в том смысле, что у вас нет внешнего языка для указания формата данных, который я считаю вполне удобным для этого конкретного проекта.
Итак, мой вопрос сводится к следующему: кто-нибудь знает, быстро ли ускоряется сериализация для типичного варианта использования, описанного выше?
Также, если есть другие библиотеки, которые могут быть прав для этого, я буду рад услышать о них.