Wcf клиентская задержка вызова больше 10 se c ... in. NET CORE - PullRequest
0 голосов
/ 24 марта 2020

я хочу с подключенной службой WCF в. Net ядро ​​3, в настоящее время у меня есть метод wcf для создания PDF-документа ...

метод хорошо работает локально, задержка между 1500 - 2500 мс ... но когда я публикую sh приложение в IIS, этот метод задерживает больше 15000 мс, это слишком много, и пользователь напуган, это можно оптимизировать на уровне кода? или это конфигурация IIS?

private async Task<DocumentsService.invokeResponse> _createDoc(string strXml)
{
    System.Diagnostics.Stopwatch timer = new System.Diagnostics.Stopwatch();
    timer.Start();

    var endpoint = new DocumentsService.wsDocumentsClient.EndpointConfiguration();
    var service = new DocumentsService.wsDocumentsClient(endpoint);
    var response = new DocumentsService.invokeResponse();

    var parameter = new DocumentsService.XML();
    parameter.document = strXml;

    service.ClientCredentials.UserName.UserName = "user"
    service.ClientCredentials.UserName.Password = "password";

    var scope = new OperationContextScope(service.InnerChannel);
    var httpRequestProperty = new HttpRequestMessageProperty();
    httpRequestProperty.Headers[HttpRequestHeader.Authorization] = "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(service.ClientCredentials.UserName.UserName + ":" + service.ClientCredentials.UserName.Password));

    OperationContext.Current.OutgoingMessageProperties[HttpRequestMessageProperty.Name] = httpRequestProperty;

    response = await service.invokeAsync(parameter); //this delay

    timer.Stop();
    var time = timer.ElapsedMilliseconds; //local host 1500 - 2500 ms... in IIS more 10.000 ms
    return response;
 }

Обновление: задержка метода: response = await service.invokeAsyn c (параметр);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...