topicClient.Send timeoutception

У меня есть темаКлиент, созданный из сообщений фабрики с использованием connectionString

MessagingFactory.CreateFromConnectionString (ConnectionString)

MessagingFactory.CreateQueueClient (topicName).

В низкочастотных сетях я получаю исключение тайм-аута при отправке сообщений в тему Azure. Есть ли способ изменить свойство тайм-аута?

Я знаю, что есть способ, когда мы используем метод MessagingFactory.Create().

заранее спасибо

1 ответ

Для тех из вас, кто наткнулся здесь через гугл. У меня возникла аналогичная проблема при использовании пакета Microsoft.Azure.ServiceBus в ядре.NET. Я получил ошибку тайм-аута при попытке

await client.SendAsync(message);

В моем случае проблема заключалась в том, что моя компания блокировала порт 5671. Переход на AmqpWebSockets решил мою проблему. Поместите это после строки подключения.

;TransportType=AmqpWebSockets

Вот фрагмент кода:

MessagingFactorySettings settings = new MessagingFactorySettings {
    settings.OperationTimeout = TimeSpan.FromSeconds(120)
    };
MessagingFactory messagingFactory = MessagingFactory.Create(connection, settings);

и более того - если вам требуется обмен сообщениями, критичными к производительности, ServiceBus также поддерживает стандартный протокол обмена сообщениями - AMQP.

settings.TransportType = TransportType.Amqp;

Кстати, я предполагаю опечатку, но на всякий случай - в вашем фрагменте кода используйте: CreateTopicClient (не createQueueClient)

Надеюсь, поможет! Sree

Другие вопросы по тегам