У меня есть функция Azure, которая отправляет около 20 тыс. Сообщений на служебную шину.Сначала я начал с операции ожидания, но понял, что это очень медленно.После я попытался без ожидания, и это ускорило его.Однако я не могу просто вернуться из своей функции azyre до того, как все сообщения будут отправлены, так как это завершит процесс.Затем я попытался сделать следующее:
string queuePath = "xx";
var queueClient = new QueueClient(_serviceBusConnectionString, queuePath);
foreach(var tenantSite in tenatSites)
{
var jsonStr = JsonConvert.SerializeObject(tenantSite);
string messageBody = jsonStr;
var message = new Microsoft.Azure.ServiceBus.Message(Encoding.UTF8.GetBytes(messageBody));
var task = queueClient.SendAsync(message);
tasks.Add(task);
}
Task.WaitAll(tasks.ToArray());
Проблема здесь в том, что кажется, что все сообщения обрабатываются, а не просто доставляются.Каков правильный подход для отправки большого количества сообщений на служебную шину и ожидания всех доставленных (не обработанных)?