Qpid JMS-এর Netty ট্রান্সপোর্ট সংযোগ এক্সটেনশনের মাধ্যমে নতুন প্রক্সি হ্যান্ডলার পেতে পারে:

Supplier<ProxyHandler> handlers = () ->
    new Socks5ProxyHandler(
        new InetSocketAddress("proxy.example", 1080));

JmsConnectionFactory factory = new JmsConnectionFactory(
    "amqps://broker.example:5671");
factory.setExtension(
    JmsConnectionExtensions.PROXY_HANDLER_SUPPLIER.toString(),
    (connection, remote) -> handlers);

Supplier এবং InetSocketAddress হলো JDK টাইপ। প্রক্সি হ্যান্ডলারগুলি Netty-র, আর ফ্যাক্টরি ও এক্সটেনশন এনাম org.apache.qpid.jms-এর।

অনুমোদিত পাবলিক প্রক্সি পথে সর্বজনীনভাবে পৌঁছানো যায় এমন ব্রোকারের জন্য SOCKS5 প্রক্সি তালিকা হোস্ট ও পোর্টের প্রার্থী দেয়; নিশ্চিত করুন নির্বাচিত নোড ব্রোকারের প্রকৃত হোস্ট ও পোর্ট অনুমোদন করে। এক্সটেনশন একটি সরবরাহকারী ফেরত দেয়; প্রতিটি সরবরাহকারী কল নতুন হ্যান্ডলার তৈরি করে। একাধিক সংযোগের জন্য একটি ধরে রাখা পরিবর্তনশীল হ্যান্ডলার ফেরত দিলে সেই মালিকানা বিন্যাস লঙ্ঘিত হবে।

SOCKS5 প্রমাণীকরণের জন্য ব্যবহারকারীনাম ও পাসওয়ার্ড গ্রহণকারী হ্যান্ডলার ওভারলোড ব্যবহার করুন। ব্রোকারের ক্রেডেনশিয়াল JMS সংযোগে রাখুন এবং প্রকৃত AMQPS ব্রোকার URI ও TLS নাম ধরে রাখুন।

এক্সটেনশনটি Netty-র HTTP, SOCKS4 ও SOCKS5 প্রক্সি হ্যান্ডলার সমর্থন করে। HTTP CONNECT-এর জন্য মধ্যস্থতাকারীকে ব্রোকারের লক্ষ্য পোর্ট অনুমোদন করতে হবে।

সম্পর্কিত নিবন্ধ