Azure Event Hubs পাইথন: HTTP প্রক্সির মাধ্যমে WebSockets-এ AMQP
Event Hubs-এর http_proxy অভিধানটি হোস্টনেম ও পূর্ণসংখ্যা পোর্টসহ দিন এবং একই সঙ্গে WebSocket AMQP পরিবহন নির্বাচন করুন।
HTTP প্রক্সি ব্যবহার করা Event Hubs-এর একটি পাইথন কনজিউমারের জন্য ক্লায়েন্ট তৈরি করার সময় SDK-এর প্রক্সি অভিধান ও WebSocket পরিবহন কনফিগার করুন:
from azure.eventhub import EventHubConsumerClient, TransportType
client = EventHubConsumerClient(
fully_qualified_namespace=namespace,
eventhub_name=eventhub_name,
consumer_group='$Default',
credential=credential,
transport_type=TransportType.AmqpOverWebsocket,
http_proxy={
'proxy_hostname': 'proxy.example',
'proxy_port': 8080,
},
)
Namespace, Event Hub-এর নাম ও credential হলো অ্যাপ্লিকেশনের বিদ্যমান পরিষেবা কনফিগারেশন। এরপর এর গ্রহণ callback ও স্বাভাবিক client-close জীবনচক্র অনুসরণ করুন।
এই অভিধানটি মধ্যস্থকারীকে সরাসরি বর্ণনা করে। এটি Requests যে http/https গন্তব্য-স্কিম ম্যাপ গ্রহণ করে তা নয়। এমন পাবলিক Event Hubs namespace-এর জন্য যেখানে পাবলিক মধ্যস্থকারী অনুমোদিত, সেখানে HTTP প্রক্সি তালিকা অ্যাকাউন্টহীন hostname ও port ক্ষেত্রের জন্য প্রার্থী জোগায়। প্রস্তাবিত প্রক্সি অ্যাকাউন্ট প্রয়োজন হলে username ও password কী যোগ করুন।
WebSockets-এ AMQP পরিষেবার 443 পোর্ট ব্যবহার করে, আর সাধারণ AMQP পরিবহন ব্যবহার করে 5671। প্রক্সিকে তবুও Event Hubs namespace-এ তৈরি হওয়া সংযোগটি অনুমোদন করতে হবে।
একটি token credential টোকেন সংগ্রহের সময় আলাদা HTTP অনুরোধ করতে পারে। ওই প্রমাণীকরণ পথেও প্রক্সি প্রয়োজন হলে এর সমর্থিত পরিবহন যথাযথভাবে কনফিগার করুন।