сокет -V- производительность покоя - PullRequest
1 голос
/ 17 февраля 2011

Я провел некоторые поиски, но ничего не придумал по этой теме. Мне было интересно, сравнивал ли кто-нибудь (в некоторой степени) разницу в производительности между RPC через сокет и веб-сервисом REST. Если оба будут делать одно и то же, у кого будет тенденция быть лучшим исполнителем? Я уже начал создавать некоторый код сокета и хотел бы знать, даст ли REST лучшую производительность, прежде чем я продвинусь намного дальше. Любой вклад будет очень признателен. Спасибо действительно

Ответы [ 2 ]

4 голосов
/ 17 февраля 2011

RMI

Похоже на локальный API, очень похожий на XMLRPC

Может предоставить довольно неплохие данные удаленных исключений

Для Java это означает, что это вызывает блокировку иограничивает ваши параметры

Имеет ужасные проблемы с версиями между различными версиями клиентов

Скелетные файлы должны быть скомпилированы как CORBA, что не очень гибко

REST:

легко обходить межсетевые экраны

полезно для загрузки файлов, так как он может быть довольно легким

очень простым, если вы просто хотите пихнуть простые вещи в что-то и вернутьсяцелое число (например, для загрузчиков)

, обеспечивающее простую защиту прокси для Apache и позволяющее ему принимать тепло

не определяет никакого стандартного формата для обмена данными (может быть JSON,YAML 1.0, YAML 2.0, произвольный формат XML и т. Д.)

не определяет каких-либо соглашений об отправке удаленных ошибок вызывающей стороне, часто используются целочисленные коды,но способ отправки данных не определен.В идеале это должно быть стандартизировано.

может потребовать большой работы на стороне клиента библиотеки для использования данных (настраиваемая сериализация и т. Д.)

Короче говоря, от здесь

веб-сервисы допускают слабосвязанную архитектуру.При использовании RMI необходимо обеспечить синхронизацию объектов во всех приложениях

RMI лучше всего работает для небольших приложений, которые не связаны с Интернетом и, следовательно, не масштабируются

2 голосов
/ 17 февраля 2011

Трудно представить, что REST быстрее, чем простое сокетное соединение, учитывая, что он также проходит через сокет.

Однако REST может быть достаточно производительным, стандартным и более простым в использовании. Я бы проверил, достаточно ли быстр REST и соответствует ли он вашим требованиям (или одному из многих других существующих решений), прежде чем пытаться использовать собственное решение Socket.

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