Гость
Map
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS / 8 сообщений из 8, страница 1 из 1
21.08.2019, 07:12
    #39851899
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
Сабж. IIS 7.5.7600 на Win Server 2008R2 SP1 Enterprice edition. Сервис для внутреннего использования, и доступен только во внутренней сети. Всё работает нормально, но есть пара нюансов:
1. Долгое время отклика сервиса, если к нему какое-то время никто не обращался. Настроили always on, как описано здесь и здесь (параметр startMode для пула, и параметр serviceAutoStartEnabled для приложения, Application Initialization устанавливать не стали) - тем не менее, особенного эффекта это не возымело. Особенно интересна следующая деталь: некое действие клиентского приложения сводится к последовательному (через async-await) вызову 2 сервисных методов, и если к сервису никто не обращался некоторое время, то с ощутимой задержкой выполняются оба метода. Ну, почему долго выполняется первый - это понятно, а вот почему такая же картина со вторым - непонятно: сервис ведь уже поднялся, разогрелся, загрузил сборки, итд.
2. Ввиду изложенного в п. 1 - есть ли смысл поменять хостинг в IIS на self-hosting в виндовс-сервисе?
3. Как вариант - может быть, имеет смысл написать windows-сервис, который с определенной частотой будет дергать методы WCF-сервиса, чтобы не дать ему уснуть?
4. Как можно организовать более-менее достоверное нагрузочное тестирование сервиса? Возможное количество пользователей ~5000, активность обращения к сервису неравномерна - в течение месяца обращения будут достаточно редки, но в отдельные 2-3 дня к сервису могут обратиться все предполагаемые пользователи сразу. Если я в тестовом приложении, например, запущу параллельно с интервалом в 1 секунду 5000 тасков с разными параметрами, которые будут дёргать сервисные методы, и логировать факт успешного/неуспешного вызова - это даст какую-либо внятную картину?
...
Рейтинг: 0 / 0
26.08.2019, 11:49
    #39853691
vb_sub
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
Сон Веры Павловны,
4)Создаешь еще один Wcf- сервис (TestCaller), в котором клиенты этого сервиса будут слушать его и ждать от него команды (дуплексная связь)
Создаешь консольное приложение, которое подключается к TestCaller и ждет от него команды (callback-реализация).
Добавляешь ссылку на свой тестируемый WCF-сервис, подключаешься к нему.
Создаешь 5000 консольных приложений.
Посредством вызова метода TestCaller, все твои клиенты начнут вызывать твой тестирумый WCF-сервис.

Самый лучший вариант-Azure DevOps Services. Только не знаю точно, можно ли там WCF тестить.
...
Рейтинг: 0 / 0
26.08.2019, 15:16
    #39853763
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
>Сон Веры Павловны, 21 авг 19, 07:12 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1316168&msg=21953925][21953925]
>2. Ввиду изложенного в п. 1...
<Данный вариант протестировать обязательно. Причем и для:
-WellKnownObjectMode.Singleton. На сервере регистрируем объект https://docs.microsoft.com/ru-ru/dotnet/api/system.runtime.remoting.remotingconfiguration.registerwellknownservicetype?view=netframework-4.7.2
]Type. Далее вызываем сервис с подсчетом времени выполнения. Задержка. Повторный вызов сервиса. Анализ результатов.
и для:
-WellKnownObjectMode.SingleCall. Можно увидеть как долго сервис поднимается, разогревается, загружает сборки и т.д.
...
Рейтинг: 0 / 0
28.08.2019, 20:42
    #39854876
ВМоисеев
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
>Сон Веры Павловны, 21 авг 19, 07:12 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1316168&msg=21953925][21953925]
>...поменял ли в тестовом варианте хостинг в IIS на self-hosting в виндовс-сервисе?
< Если да, то каков результат? Вопрос для меня не праздный.
...
Рейтинг: 0 / 0
29.08.2019, 07:05
    #39854940
Сон Веры Павловны
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
ВМоисеев>Сон Веры Павловны, 21 авг 19, 07:12 https://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=1316168&msg=21953925][21953925]
>...поменял ли в тестовом варианте хостинг в IIS на self-hosting в виндовс-сервисе?
< Если да, то каков результат? Вопрос для меня не праздный.
Поменял, отклик сервиса стал однозначно быстрее при вызове любого метода сервиса, и вне зависимости от времени бездействия сервиса.
До нагрузочных тестов пока дело не дошло - некогда. В следующий понедельник это хозяйство запускается в полуопытно-полурабочую эксплуатацию, там и выяснится, нормально ли self-hosted будет держать предполагаемую нагрузку.
Ну, и плюс еще один профит - self-hosted получилось настроить так, что с одной стороны, он поддерживает windows-аутентификацию, и нормально имперсонирует вызывающих пользователей, с другой стороны, ряд операций может производить в контексте windows-аккаунта, под которым запущен сервис - т.е., например, обращаться к БД c windows-аутентификацией под своей собственной сервисной учёткой. Под IIS мне такого добиться не удалось, как не бился, никакие манипуляции с endpoint identity не помогли.
...
Рейтинг: 0 / 0
29.08.2019, 10:39
    #39854984
vb_sub
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
Сон Веры Павловны,
попробуй в консольном приложении запустить, может еще быстрее взлетит.
...
Рейтинг: 0 / 0
29.08.2019, 12:43
    #39855070
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
Если есть система оркестровки и/или мониторинга, то прописываем там простенький health check и нет проблем :)
...
Рейтинг: 0 / 0
29.08.2019, 12:46
    #39855080
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS
А нагрузочное тестирование через Visual Studio, JMeter...
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / WCF-сервис с TCP/IP биндингом, windows-авторизацией, и хостингом в IIS / 8 сообщений из 8, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]