Плохая идея для передачи большой полезной нагрузки с помощью веб-сервисов? - PullRequest
14 голосов
/ 01 октября 2009

I собирать , что в принципе нет предела количеству данных, которые могут быть отправлены при использовании REST через POST или GET. Хотя я не использовал REST или веб-сервисы, похоже, что большинство сервисов включают передачу ограниченных объемов данных. Если вы хотите передать данные объемом 1-5 МБ (в любом направлении), считаются ли веб-сервисы плохой идеей?

Обновление : Приложения, которые мы рассматриваем для подключения через службу REST, являются внутренними приложениями. У нас есть возможность выбора других вариантов подключения (например: RMI)

Ответы [ 2 ]

8 голосов
/ 01 октября 2009

1-5 МБ с помощью rest не очень большой набор данных. Ограничивающим фактором, скорее всего, является память. В зависимости от того, как вы генерируете xml, у вас может быть мало ресурсов сервера, если у вас высокий трафик в службе.

Если вы используете потоковую память для генерации XML, проблем не будет. создание dom-дерева с последующим его выпуском потребует гораздо больше памяти.

Но даже если ваше дерево dom занимало в 10 раз больше памяти, чем необработанный xml, вам потребовалось бы 40 одновременных подключений, занимающих 2 ГБ памяти сервера. Так что это может не быть проблемой в вашей ситуации.

Менее вероятны проблемы с памятью на стороне клиента. но 5 десериализация 5-мегабайтного дампа xml не должна быть проблемой на любом нормальном компьютере.

4 голосов
/ 01 октября 2009

1-5 МБ - это нормально, если вы предоставляете пользователю какую-то обратную связь о прогрессе. Веб-сервисы работают по протоколу HTTP, что нормально, если речь идет о накладных расходах в больших наборах данных, настоящая проблема - это XML. XML чаще всего добавляет огромные издержки к размеру сериализованных данных. Я бы рассмотрел JSON или Гессиан для больших наборов данных:)

...