2010-12-04 1 views
2

Я не уверен, что это правильное слово, но на моем предприятии у нас есть два типа услуг: совокупное обслуживание & элементарное обслуживание.Совокупный шаблон в службе SOA

Служба агрегирования идентифицируется с их интерфейсов, где ввод представляет собой объект «Список запросов», и аналогичным образом ответ является списком. Предполагается, что служба обрабатывает список запросов по обоюдному исключению, т. Е. При обработке для одного объекта Request, служба должна продолжать обрабатывать следующий объект Request. Обычная причина заключается в повышении производительности - вместо обслуживания потребителя в цикле он просто создает список объектов Request и вызывает услугу только один раз. Другим так называемым преимуществом является то, что вы можете группировать несвязанные запросы в один запрос.

Кто-нибудь также использует аналогичные виды агрегированных услуг? если да, можете ли вы предоставить дополнительную информацию или преимущества этого подхода.

ответ

5

Это обычная практика в дизайне услуг, идея в том, что всякий раз, когда вы пересекаете границу обслуживания, вы стоите за это. Помните, что SOA - это передача сообщений между службами, а не ссылки на объекты, цена на эту развязанную доброту пересекает границу.

Итак, когда вы пересекаете границу, вы должны попытаться выжать столько, сколько сможете.

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

Вот некоторые ссылки на интересные ресурсы о некоторых других идеях дизайна сервиса SOA.

Я бы посоветовал вам прочитать статьи Томаса Эрла и Роджера Сессий, это даст вам твердую информацию о том, что такое SOA.

Building a SOA

SOA Design Pattern

Achieving integrity in a SOA

Why your SOA should be like a VW Beetle

SOA explained for your boss

WCF Service Performance

 Смежные вопросы

  • Нет связанных вопросов^_^