Рабочий WCF WebServices с сервером NLB

Я запускаю архитектуру нового проекта с помощью WCF, но я не правильный человек для создания некоторых рекомендаций по сети, таким образом, я провожу некоторое исследование, но не могу найти ответы на эти вопросы:

  1. Мы разместим сервис WCF в общем приложении службы Windows в 2 серверах, и у нас будет другой сервер для создания задания Выравнивания нагрузки с помощью WNLB. То, что мы размещаем WCF в приложении службы Windows, может нарушить задание NLB?

  2. Перед моим исследованием я думал, что выравнивание нагрузки было жестко для конфигурирования, но с NLB это, кажется, очень просто, его действительно настолько простой?

Примечание: Привязка будет basicHttpBinding

1
задан 22 August 2014 в 00:12
1 ответ

Я не могу говорить с NLB конкретно о службах WCF с балансировкой нагрузки, но в прошлом я поддерживал и создавал множество веб-служб WCF с балансировкой нагрузки. В целом, я бы не рекомендовал использовать NLB, вне среды Dev, так как NLB плохо масштабируется. Однако, если у вас нет доступа к аппаратному компенсатору нагрузки или желания перейти на Linux (HAProxy/Varnish/Nginx), он может работать.

Так что:

  1. Нет, у NLB не должно быть проблем с балансировкой нагрузки для веб-служб WCF.
  2. NLB проще настроить, так как у него меньше возможностей, чем у более надежного решения по балансировке нагрузки. Так оно и есть. Есть еще много вариантов, которые можно использовать, включая переписывание, но NLB не является полнофункциональным решением балансировки нагрузки.

Единственное предостережение, которое я должен сделать, это больше связано с балансировкой нагрузки WCF, нежели с NLB. Если вы планируете использовать SSL со службой WCF, и вы перейдете на балансировщик нагрузки, поддерживающий SSL-выгрузку, вы можете столкнуться с проблемами, когда WSDL недоступен через VIP (IP-адрес виртуального сервера). Существуют обходные пути, но поскольку вас еще нет, я просто хотел, чтобы вы знали об этом, а не пугались.

EDIT: Я собирался подробно рассказать о том, как адресовать метаданные в сценарии SSL-выгрузки, но недавний пост в блоге MSDN обрабатывал его гораздо элегантнее:

http://blogs.msdn.com/b/dsnotes/archive/2014/10/03/ssl-offloading-in-load-balancer-scenario.aspx

Суть в том, что есть два варианта, модифицируя customBinding, чтобы разрешить enableUnsecuredResponse или полностью изменить WSDL, чтобы сделать ее доступной через HTTPS на сервере. Вариант 2 - более эффективный способ справиться с этим, так как он позволит обеспечить лучшую совместимость с не.NET технологиями

.
1
ответ дан 4 December 2019 в 00:20

Теги

Похожие вопросы