Меня недавно наняли в компанию, которая ранее обрабатывала связь клиент-сервер с традиционными веб-сервисами asp.net и передавала набор данных туда и обратно.
Я переписал ядро, так что теперь есть «подключенный» клиент Net.Tcp ... и все там делается. Это были недельные "открытия в производстве" ... но они того стоят.
Болевые точки, которые мы должны были выяснить в конце игры, были:
1) Дросселирование по умолчанию заблокировало 11-го пользователя (по умолчанию разрешено только 10).
2) Значение по умолчанию «maxBufferSize» было установлено равным 65 КБ, поэтому первое растровое изображение, которое необходимо было загрузить, привело к сбою сервера :)
3) Другие конфигурации по умолчанию (максимальное количество одновременных подключений, максимальное количество одновременных вызовов и т. Д.).
В общем, оно того стоило ... приложение стало намного быстрее, просто изменив их инфраструктуру, и теперь, когда мы "подключили" пользователей ... сервер может отправлять сообщения клиентам.
Другие замечательные преимущества заключаются в том, что, поскольку мы на 100% знаем, кто подключен, мы можем фактически применять нашу политику лицензирования на уровне приложений. До этого (и до того, как меня приняли на работу), моей компании приходилось просто регистрироваться, а затем в конце месяца выставлять счет клиентам за дополнительные подключения.