У меня есть система, что запрос данных из веб-сервиса WCF это как так:WCF службы параллельной обработки
WCF1 называет WCF2, WCF2 называет WCF3 и WCF3 делать свою работу и возвращает Ответные
Моя проблема здесь некоторые из операций занимают много времени «около 2 минут» для обработки
Так что если WCF1 отправляет запрос, который занимает много времени, а затем еще один запрос от WCF1, который должен занять секунду, он будет ждать, пока первый запрос завершается
я читал об этой проблеме, некоторые из пользователей сказали использовать
<ServiceBehavior(ConcurrencyMode:=ConcurrencyMode.Multiple, InstanceContextMode:=InstanceContextMode.PerCall)> _
это не решить проблему 100%
Может у пожалуйста совет
я принял эту конфигурацию из этой статьи он говорит, что это deffers https://www.linkedin.com/pulse/configure-wcf-behaviors-using-instance-context-mode-lapidus-leonid –
Я прочитал эту статью. Мой ответ все еще стоит. Прирост производительности незначительный. Вам следует попытаться определить основные причины проблем с производительностью. Зачем вам нужно звонить 3 WCF-сервисам, когда только один из них действительно что-то делает. –
да, я знаю, это звучит странно, но в нашей компании много брандмауэров, поэтому .. В любом случае, даже если я звоню один в один, проблема будет по-прежнему существовать, потому что служба вызовет услугу .... которая будет одним клиентом, вызовет только сервис, поэтому проблема будет такой же. Так что если я хорошо понимайте, что эта конфигурация не повлияет на производительность, и я должен проверить код службы, а не конфигурацию службы? –