Вопрос

При взгляде на SOA (ориентированные на обслуживание архитектуры) Основные проблемы, по-видимому, распространяют нагрузку на услуги по нескольким хостам, а затем управлять этими хостами (принимая листы от строки или добавления новых хостов)

Когда одна услуга разговаривает с другим, ему не нужно знать информацию о хосте (на уровне приложений). Скорее, среда SOA должна иметь возможность направлять запрос на обслуживание к определенному хосту на основе характеристик текущей нагрузки Hosts (поэтому он должен знать, что все горячие сервис работает и их относительная нагрузка).

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

Это было полезно?

Решение 2

Прочитав много концепции, которую я на самом деле искал, был Предприятие Service Bus. Эспа.

Хотя он явно не определяет явный протокол, он определяет архитектурный стиль, который позволяет решению проблем, которые я заявил выше.

Другие советы

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

Балансировка нагрузки основана на адресации, которая зависит от технологии доступа к обслуживанию. Системы, встроенные в «SOA-Way», могут использовать различные технологии доступа услуг, такие как мыло (по сравнению с HTTP, JMS и т. Д.), Отдых, асинхронные сообщения XML через JMS и т. Д.

С мылом потребитель обслуживания может посмотреть реестро UDDI, чтобы найти поставщика услуг. Некоторые из последних программ управления реестрами UDDI предоставляют простые (например, Round-Robin) балансировку нагрузки. Еще одна идея мыла с использованием WS-адресации, но это на самом деле не предназначено для балансировки нагрузки.

Я думаю, что в настоящее время лучшее место для балансировки нагрузки - это базовый сетевой транспортный слой. С HTTP-транспортом вы можете выбрать аппаратное или программное обеспечение (например, модули Apache HTTPD) балансировщиков, которые могут адаптировать распределение на основе времени отклика и тайм-аута. С транспортом JMS самые популярные серверы JMS предоставляют некоторую форму балансировки нагрузки. Другие протоколы - как CORBA или RendezVous - обычно требуют пользовательского решения.

Вы также можете использовать программное обеспечение ESB, например, Oracle Service Bus или Service Bus Tibco AMX. С ESB вы можете легко создать прокси-сервер балансировки нагрузки для экземпляров обслуживания. Прокси может быть увеличен с помощью какой-то логики, как поиск таблицы базы данных для руководства.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top