WCF Самостоятельный хостинг на клиенте? Хорошо или плохо
Интересно, кто-нибудь пробовал эту технику, чтобы получить события для клиента со стороны сервера. У меня есть среда, в которой используются серверы на основе Unix, и поэтому я не могу использовать дуплекс WCF / обратные вызовы и т. Д.
Идея заключается в том, что мои клиенты - это Windows-окна, на которых запущено толстое приложение.net, что приведет к раскрутке собственного хоста WCF и регистрации их собственного хост-адреса на сервере для этого сеанса. У них будет очень простой контракт, и сервер, когда у него будет обновление, вызывает клиентский сервер, сообщая ему, что обновление ожидает его на сервере, а клиент получит его и т. Д.
Я все еще пытаюсь разобраться с WCF, так что не уверен, что это хороший путь, есть ли какие-либо последствия для безопасности, о которых мне следует беспокоиться? Есть ли способы заставить дуплексные вызовы работать на разных платформах.
Я сделал нечто подобное, прежде чем использовать сокеты, или, может быть, кроссплатформенная очередь сообщений будет лучшим способом сделать это в любом случае.
Спасибо
76mel
3 ответа
Другим способом получения аналогичных результатов может быть опрос клиентов. Это сильно зависит от того, какие требования существуют. Если вам нужно обновление почти в реальном времени, это, очевидно, не сработает, так как для этого вам понадобится пройти много опросов, но если все в порядке, нужно потратить минуту или больше, чтобы получить обновления для клиента, опрос может быть просто ответ.
По крайней мере, это звучит так, как будто это должно сработать, хотя я думаю, что вы могли бы разместить и в IIS, поскольку серверы *nix могли бы просто сделать веб-вызов, верно? Я не уверен, что сам хостинг принесет вам пользу, хотя он должен работать нормально, но может быть немного больше боли в шее для настройки и т. Д.
Пожалуйста, обновляйте здесь всякий раз, когда вы приняли решение, потому что это звучит как интересная задача, и некоторые из нас хотели бы посмотреть, как вы разбираетесь.
Мы используем самостоятельно размещенный WCF для аналогичного сценария. Мы также хотели избежать зависимости нашего клиентского приложения от IIS, чтобы избежать проблем с лицензированием и развертыванием.
Это работает довольно хорошо для нас, хотя WCF может быть излишним для того, что вам нужно. Поскольку вы используете HTTP, вы можете создать простой веб-сервис, построенный непосредственно на Http.sys.