내 api (C#)에서 현재 많은 요청 (15-20 초)에 응답하고 있습니다. 이제 이벤트 허브에 데이터를 보내려고합니다. 하지만 푸른 하늘 이벤트 허브에 데이터를 전송하는 사용자를 지연시키고 싶지 않습니다. 그래서 하늘에 내 애플 리케이션을 보내는 동안 사용자가 내 대답을 기다리고 싶지 않아 이벤트 허브 beacuse 비동기 요청을 할 필요가있다. 가능한 한 빨리 응답을 보내야하며, 푸른 색은 2-3 초 정도 지속될 수 있습니다.async azure 이벤트 허브 데이터 메서드를 보냅니다.
나는 어떻게 성공할 수 있습니까? 나는 잘했다. 그러나 didnt는 내가 원하는 것을 얻는다. 내 코드 :
public static async Task<string> SendEvents(List<object> messages)
{
string eventHubName = "rcmds";
var connectionString = GetServiceBusConnectionString();
CreateEventHub(eventHubName, connectionString);
var eventHubClient = EventHubClient.CreateFromConnectionString(connectionString, eventHubName);
try
{
List<Task> tasks = new List<Task>();
for (int i = 0; i < messages.Count; i++)
{
var serializedMessage = JsonConvert.SerializeObject(messages[i]);
EventData data = new EventData(Encoding.UTF8.GetBytes(serializedMessage));
// Mesajları Event Hub a yolla
tasks.Add(eventHubClient.SendAsync(data));
}
Task.WaitAll(tasks.ToArray());
System.Threading.Thread.Sleep(7000);
}
catch (Exception ex)
{
new ExceptionHandler(ex, "Event Hub Library Sender - SendEvents");
}
finally
{
eventHubClient.CloseAsync().Wait();
}
return "";
}
와 나는 전화처럼이 방법 : 내가 생각/