Лучший формат / сжатие / протокол для передачи данных от клиента к серверу? - PullRequest
0 голосов
/ 15 декабря 2010

У нас есть несколько клиентов, запрашивающих работу с сервера - список из 10000 URL. = 1 МБ

и отсылающих обратно обработанные данные обратно на сервер - около 1 КБ на URL, т.е.клиент будет делать это каждые 5-10 минут.

У меня есть требования к расширяемости, высокой производительности и независимости платформы в этом порядке.

  1. Должен ли я использовать XML или пользовательский двоичный файлформат для передачи?

  2. Лучший тип сжатия для использования?gzip, я вижу людей .NET, использующих библиотеку ICSHARP.Каковы компромиссы?

  3. Должен ли клиент отправлять данные через POST?или какой-нибудь другой лучший метод?

  4. Любые другие предложения, которые следует учитывать при таком сценарии?

Ответы [ 2 ]

1 голос
/ 15 декабря 2010
  1. Я бы посмотрел на BSON, только потому, что сейчас он привлекает к себе большое внимание, и вы должны найти хорошо поддерживаемые сериализаторы.Это также довольно узкий проводной протокол, поэтому в центре его внимания находятся несколько высококлассных nosql dbms.

  2. Что касается сжатия, используйте все, что поддерживает ваш веб-сервер (возможно, gzip),Компромисс со сжатием почти всегда сводится к циклам процессора, потребляемым против компактности сжатия.Но, в конце концов, gzip - это хорошая середина пути, и все, что вам нужно сделать, чтобы его использовать, это включить его.

  3. Да, POST - подходящий метод.

  4. Если производительность или параллелизм становятся узкими местами, вы можете переместить gzip (и SSL, и аутентификацию, и сеанс, и многие другие) на уровень перед вашими веб-серверами.Но моя интуиция - вы будете ограничены вводом / выводом на стороне сервера.Удачи.

0 голосов
/ 15 декабря 2010

вы рассматривали JSON?та же информация, что и в XML-файле, но для ее описания используется меньше текста.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...