தடுக்கும், TLS அல்லாத AMQP இணைப்புக்கு Spring-இன் RabbitConnectionFactoryBean SOCKS அறியும் சாக்கெட் தொழிற்சாலையை RabbitMQ Java கிளையண்டுக்கு வழங்கலாம்.

Commons Net ஏற்கனவே கிடைத்தால், துவக்கத்திற்கு முன் உள்ள factory bean-ஐ உள்ளமைக்கவும்:

var socksProxy = new java.net.Proxy(
    java.net.Proxy.Type.SOCKS,
    new java.net.InetSocketAddress("proxy.example", 1080));
rabbitFactoryBean.setSocketFactory(
    new org.apache.commons.net.DefaultSocketFactory(socksProxy));

rabbitFactoryBean என்பது பயன்பாட்டின் RabbitConnectionFactoryBean. அதன் broker ஹோஸ்ட், AMQP போர்ட், கணக்கு மற்றும் Spring இணைப்பு-நிர்வாக அமைப்பைப் பேணுங்கள். broker இலக்காகவே இருக்கும்; SocketFactory SOCKS வழியாக அதை அடையும் சாக்கெட்டுகளை உருவாக்குகிறது. பொது இடைத்தரகர்கள் அனுமதிக்கப்படும் பொது broker-க்கு எதிரான உணர்வற்ற சோதனைக்கு, SOCKS ப்ராக்ஸி பட்டியல் வேட்பாளர்களை வழங்குகிறது; runtime ஆதரிக்கும் SOCKS பதிப்புடன் பொருத்தி, உண்மையான broker ஹோஸ்ட் மற்றும் போர்ட்டுக்கான அணுகலை உறுதிப்படுத்துங்கள்.

Commons Net-இன் தொழிற்சாலை வழங்கப்பட்ட Proxy-ஐப் பயன்படுத்தி இணைக்கப்படாத java.net.Socket-ஐ உருவாக்குகிறது. பின்னர் RabbitMQ-இன் தடுக்கும் இணைப்புக் குறியீடு அந்த சாக்கெட்டை அதன் வழக்கமான இணைப்புப் பாதையில் இணைக்கிறது. HTTP_PROXY-ஐ மட்டும் ஏற்றுமதி செய்வது இந்த AMQP சாக்கெட் தொழிற்சாலையை வழங்காது.

SocketFactory கொக்கி தடுக்கும் I/O-க்குப் பொருந்தும் என RabbitMQ ஆவணப்படுத்துகிறது. NIO அல்லது பிற போக்குவரத்துக்கு உள்ளமைக்கப்பட்ட கிளையண்டுக்கு அந்தப் போக்குவரத்து ஆதரிக்கும் கொக்கி தேவை. AMQPS-க்கு, பொருத்தமான TLS சாக்கெட் தொழிற்சாலை மற்றும் இலக்கு சரிபார்ப்பைப் பேணுங்கள்; மேலே உள்ள எளிய தொழிற்சாலையால் மாற்றுவது முழுமையான TLS உள்ளமைவு அல்ல.

தொடர்புடைய கட்டுரைகள்