В прошлом системы, над которыми я работал, обычно использовали XML для связи между клиентом и сервером, а также для передачи наборов результатов и т. Д. Мой текущий проект, однако, просто сериализует список объектов в двоичный файл и отправляет его через провод.
Сейчас мы подошли к тому моменту, когда наши «объекты переноса» (из-за отсутствия лучшего описания) могли начать увеличиваться в размере из-за множества новых полей. Это, в дополнение к тому факту, что теоретически у нас может быть список до 100 000 отправленных объектов, заставляет меня задуматься об относительной производительности нашего текущего подхода по сравнению с использованием XML.
Когда я говорю «производительность», я считаю:
- Размер объектов, передаваемых по проводу, и время, потраченное
- Время, необходимое для сборки объектов, готовых к передаче
- Время, необходимое для синтаксического анализа / десериализации на другой стороне, прежде чем мы отобразим в пользовательском интерфейсе
Мне кажется, что XML может получить очень многословно, поэтому может потребоваться какое-то сжатие ... но я не совсем знаком с тем, как он масштабируется по отношению к сериализованным двоичным файлам. Есть ли общее согласие относительно того, какой подход более масштабируемый, или мы попадаем в сферу «соответствия целям» здесь? :)
Спасибо за любой совет.
Cheers,
Дэйв.