Я изучаю архитектурные варианты проекта, который будет отображать живые обновления (например, Facebook) действий пользователей - логинов, фотографий и т. д. и т. д. Два основных компонента пользовательского интерфейса - это автоматически обновляемая область прокрутки, в которой будут перечислены новые уведомления (фотографии и т. д.), и панель инструментов, которая будет обновляться такими вещами, как обновленное количество сообщений и т. д.
Претенденты на это - это технологии на основе Jabber / Comet / XMPP и WebSocket.
Лагерь комет:
Лагерь WebSockets:
Поскольку эта существующая инфраструктура является Стек Microsoft, я бы предпочел не вводить в него серверы на базе Java. При этом остается (очень привлекательный) WebSync (Comet) и SuperWebSocket (WebSockets). Однако интеграция Pokein с DLL довольно проста и в проект .Net.
Существуют ли еще какие-нибудь реальные инициативы WebSocket на производственном уровне для .Net? Не слишком ли рано внедрять WebSockets в стек Microsoft, и следует ли мне отдать предпочтение чему-то вроде Kazing?
Я все еще жду отчета о типах и версиях браузеров нашей текущей пользовательской базы (проверка совместимости с HTML5). Подозреваю, что это число будет низким (более старая пользовательская база).Если это так, вариант Comet будет победителем.
Что еще нужно учитывать?
Глядя на некоторые инициативы .Net, такие как Sockets.IO и другие, я думаю, что это может быть еще слишком в начальной стадии, чтобы применяться к крупномасштабному производству. система.
Могу я получить комментарии от любого, кто использовал какие-либо из перечисленных выше технологий и продуктов?
Спасибо.
ОБНОВЛЕНИЕ
Я все еще ищу хорошие серверы WebSocket, надежные на производственном уровне. Я добавил XSockets и SignalR в лагерь Websockets после того, как недавно их нашел. Однако на данный момент есть еще два основных претендента. Это могло быть просто из-за того, что у них потрясающие маркетинговые команды, есть хорошие материалы для разработчиков - API и видео. Многие другие реализации, похоже, все еще находятся на начальной стадии, когда приводятся примеры подключения только с несколькими клиентами. Хотя это демонстрирует технологию, эти демонстрации не имеют резервных копий со значительными данными о полезной нагрузке / нагрузочной способности. Kaazing и LightStreamer соответствуют приведенным ниже требованиям.
В XSockets есть несколько хороших примеров, но, опять же, отсутствуют некоторые реальные производственные показатели.
Похоже, что SignalR еще не был протестирован в настоящей производственной среде. Решение для горизонтального масштабирования находится в разработке, но пока не выглядит стабильным. С нетерпением жду возможности увидеть, как будет развиваться этот проект в будущем.
Основные требования: