NET core mvc Telegram bot параллельная обработка запросов
Телеграм бот написан на NET Core 2.2. Используется метод взаимодействия Webhook. При тестировании, столкнулся с тем, что запросы обрабатываются чуть ли не последовательно, ощущаются сильные задержки перед отправкой результата. Почитав в интернете я понял, что IIS будет обрабатывать только один запрос за раз от одного и того же пользователя и так как Telegram отправляет нам запросы с одного и тоже адреса и ISS думает, что это один и тот же пользователь.
Вопрос: Как можно отключить особенность последовательной обработки запросов в NET Core 2.2?
Примеры кода:
private static TelegramBotClient botClient;
public static async Task<TelegramBotClient> GetBotClientAsync()
{
if (botClient != null)
{
return botClient;
}
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
botClient = new TelegramBotClient(BotConfig.Key);
string hook = string.Format(BotConfig.Url, "api/message/post");
List<UpdateType> updateTypes = new List<UpdateType>()
{
UpdateType.CallbackQuery,
UpdateType.Message,
UpdateType.InlineQuery,
UpdateType.Unknown
};
await botClient.SetWebhookAsync(hook, allowedUpdates: updateTypes);
return botClient;
}
MessageController.cs
[Route("api/[controller]/[action]")]
[ApiController]
public class MessageController : ControllerBase
{
[HttpPost]
public async Task<OkResult> Post([FromBody]Update update)
{
if (update == null) return Ok();
....
return Ok();
}