Azure Service Bus Java: выкарыстанне AMQP праз WebSockets з проксі
Наладзьце Java-кліент абмену паведамленнямі Azure Service Bus на AMQP праз WebSockets з наладамі проксі бібліятэкі AMQP.
Сучасны Java-кліент абмену паведамленнямі Azure Service Bus выкарыстоўвае AMQP. Яго будаўнік патрабуе AMQP_WEB_SOCKETS, калі наладжаны проксі.
З azure-messaging-servicebus 7.18.0 стварыце адпраўнік так:
var address = new java.net.Proxy(
java.net.Proxy.Type.HTTP,
new java.net.InetSocketAddress("proxy.example", 8080));
var proxy = new com.azure.core.amqp.ProxyOptions(
com.azure.core.amqp.ProxyAuthenticationType.BASIC,
address, proxyUser, proxyPassword);
var sender = new com.azure.messaging.servicebus.ServiceBusClientBuilder()
.connectionString(serviceBusConnectionString)
.transportType(com.azure.core.amqp.AmqpTransportType.AMQP_WEB_SOCKETS)
.proxyOptions(proxy)
.sender()
.queueName(queueName)
.buildClient();
Зменныя ўліковага запісу аўтэнтыфікуюцца праз проксі, які прымае Basic. Радок злучэння і назва чаргі па-ранейшаму вызначаюць рэсурс Service Bus. Захоўвайце створаны адпраўнік на ўвесь яго меркаваны тэрмін службы і закрыйце яго, калі праграма скончыць з ім працу.
Тут выкарыстоўвайце com.azure.core.amqp.ProxyOptions. У HTTP-стэку Azure ёсць іншы клас параметраў проксі з падобнай назвай; гэта не той тып, які прымае гэты будаўнік.
Гэта наладжвае злучэнне для абмену паведамленнямі. Праграма, якая выкарыстоўвае самастойна створаныя ўліковыя даныя ідэнтычнасці, можа таксама патрабаваць налады HTTP-транспарту токена для гэтых даных.
Старыя прыклады Azure SDK 0.9 адносяцца да іншага пакалення кліентаў. Не рабіце высновы, што іх канстанты налад або агульныя ўласцівасці HTTP апісваюць сучасны будаўнік AMQP.