Я работаю над функцией Azure с триггером http POST, как только клиент вызовет ее и отправит данные json, я отправлю ее в концентратор событий и сохраню в озеро данных.Как только он попадет под высокий трафик, 20к / час, Azure Functino создаст большое исходящее TCP-соединение, которое превысит ограничение (1920) плана.
- вызывает ли высокое исходящее TCP-соединение запись в концентратор событий, озеро данных или в обе эти области?
- есть ли способ уменьшить его, чтобы мне не пришлось больше платитьобновить наш план?
- как его отладить, чтобы устранить проблему?
код отправки данных в концентратор событий:
EventHubClient ehc = EventHubClient.CreateFromConnectionString(cn);
try
{
log.LogInformation($"{CogniPointListener.LogPrefix}Sending {batch.Count} Events: {DateTime.UtcNow}");
await ehc.SendAsync(batch);
await ehc.CloseAsync();
}
catch (Exception exception)
{
log.LogError($"{CogniPointListener.LogPrefix}SendingMessages: {DateTime.UtcNow} > Exception: {exception.Message}");
throw;
}
здесьэто отправка данных в озеро данных:
var creds = new ClientCredential(clientId, clientSecret);
var clientCreds = ApplicationTokenProvider.LoginSilentAsync(tenantId, creds).GetAwaiter().GetResult();
// Create ADLS client object
AdlsClient client = AdlsClient.CreateClient(adlsAccountFQDN, clientCreds);
try
{
using (var stream = client.CreateFile(fileName, IfExists.Overwrite))
{
byte[] textByteArray = Encoding.UTF8.GetBytes(str);
stream.Write(textByteArray, 0, textByteArray.Length);
}
// Debug
log.LogInformation($"{CogniPointListener.LogPrefix}SaveDataLake saved ");
}
catch (System.Exception caught)
{
string err = $"{caught.Message}Environment.NewLine{caught.StackTrace}Environment.NewLine";
log.LogError(err, $"{CogniPointListener.LogPrefix}SaveDataLake");
throw;
}
Спасибо,