Насколько надежным должно быть уведомление? Если уведомление потеряно (скажем, канал связи имеет сбой в маршрутизаторе и сбрасывает сокет), наступит ли конец света или все будет как обычно? Если служба не работает, нужно ли ставить в очередь уведомления с веб-сайта, когда она запускается, или их можно безопасно удалить?
Чем надежнее он вам нужен, тем больше вам нужно идти к решению с очередями (MSMQ). Если надежность не является проблемой, вы можете выбрать из множества решений, не связанных с очередями (удаленное взаимодействие, TCP, широковещание UDP, HTTP-вызов и т. Д.)
Тебя вообще волнует безопасность? Ты боишься, что злоумышленник пингует тебя, чтобы ты «освежился» до смерти, вызвав, по крайней мере, DoS, если не хуже? Вы хотите аутентифицировать веб-сайт, совершающий вызов «обновить»? Вам нужна конфиденциальность уведомлений (например, шифрование)? UDP сложнее защитить (без сеанса).
Должно ли решение обеспечивать простое развертывание, настройку и управление на месте (т. Е. Является автономным, упакованным продуктом) или является одноразовым развертыванием, которое может быть исправлено «точно в срок», если что-то изменится
Без знания деталей всех этих факторов трудно сказать «используй Х». По крайней мере одно можно сказать наверняка: удаленное взаимодействие уже устарело.
Я бы порекомендовал использовать WCF из-за простоты изменения привязок на лету, чтобы вы могли тестировать различные конфигурации (TCP, net pipe, http) без любого изменения кода.
Кстати, вы рассматривали возможность использования Уведомления о запросах для обнаружения изменений данных вместо активных уведомлений с веб-сайта? Я считаю, что это выстрел в темноте, но эквивалентная поддержка активного кэша существует во многих базах данных.