В настоящее время я работаю над функцией Azure, которая читает сообщения из очереди служебной шины. Я нахожусь в стадии тестирования, и моя очередь служебной шины получает около 50 сообщений в минуту. (в производственной среде это будет тысячи точек данных, поступающих в минуту). Когда я запускаю свою функцию, я получаю следующую ошибку (см. Комментарий об ошибке в коде)
[FunctionName("ReadServiceBusMessage")]
public static void ProcessMessagesAsync([ServiceBusTrigger("modbusdata", Connection = "test_RootManageSharedAccessKey_SERVICEBUS")]Message message, ILogger log)
{
try
{
log.LogInformation("Reading the message from queue");
log.LogInformation("======================================================");
string itemRaw;
var data = new MemoryStream(message.Body);
using (var istr = new InflaterInputStream(data))
using (var rdr = new StreamReader(istr))
{
itemRaw = rdr.ReadToEnd();//ERROR:ICSharpCode.SharpZipLib.SharpZipBaseException: 'Header checksum illegal'
}
log.LogInformation("Message encoding is completed.");
log.LogInformation("========================================");
Честно говоря, я не могу найти много полезной информации о том, что может происходить с этой ошибкой. Самое близкое к тому, что я нашел решение, - это то, что, возможно, я должен дефлятировать сообщение вместо того, чтобы надувать его или надувать в моем коде, не будет работать, потому что я не работаю с достаточным количеством данных в моделируемой среде. Заранее благодарим за любые рекомендации, которые могут быть предоставлены.