CONNECT ಸಮಯದಲ್ಲಿ ನಿಲ್ಲುವ Apache HttpClient 5 ಪ್ರಾಕ್ಸಿಗೆ ಟೈಮೌಟ್
ಟನೆಲ್ ಸೆಟಪ್ಗಾಗಿ ಸಂಪರ್ಕ ನಿರ್ವಾಹಕರ ಸಾಕೆಟ್ I/O ಟೈಮೌಟ್ ಅನ್ನು ಪ್ರತ್ಯೇಕ TCP ಸಂಪರ್ಕ ಟೈಮೌಟ್ನೊಂದಿಗೆ ಹೊಂದಿಸಿ.
ಪ್ರಾಕ್ಸಿ TCP ಅನ್ನು ಸ್ವೀಕರಿಸಿತು ಆದರೆ CONNECT ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಎಂದಿಗೂ ಪೂರ್ಣಗೊಳಿಸಲಿಲ್ಲ. ವೆಬ್ಸೈಟ್ನ ಪ್ರತಿಕ್ರಿಯೆ ಇನ್ನೂ ಪ್ರಾರಂಭವಾಗಿಲ್ಲ; ಕೇವಲ ಆ ನಂತರದ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಗುರಿಯಾಗಿಸಿದ ಟೈಮೌಟ್ ಈ ಸೆಟಪ್ ಅನ್ನು ಅನಿಯಮಿತವಾಗಿ ಕಾಯಿಸಬಹುದು.
Apache HttpClient 5.3.1 ಗಾಗಿ, ಸಂಪರ್ಕ ನಿರ್ವಾಹಕರ ಡೀಫಾಲ್ಟ್ಗಳನ್ನು ಹೊಂದಿಸಿ:
var connection = ConnectionConfig.custom()
.setConnectTimeout(Timeout.ofSeconds(5))
.setSocketTimeout(Timeout.ofSeconds(10))
.build();
var manager = PoolingHttpClientConnectionManagerBuilder.create()
.setDefaultConnectionConfig(connection)
.build();
var client = HttpClients.custom()
.setConnectionManager(manager)
.setProxy(new HttpHost("http", "proxy.example", 8080))
.build();Apache HttpComponents 5 ವರ್ಗಗಳನ್ನು org.apache.hc ಅಡಿಯಲ್ಲಿ ಬಳಸಿ, Timeout ಜೊತೆಗೆ core5 ಉಪಯುಕ್ತತೆ ಪ್ಯಾಕೇಜ್ನಲ್ಲಿ. ಕ್ಲೈಂಟ್ ಅನ್ನು ಅದರ ಕೆಲಸಕ್ಕಾಗಿ ಇರಿಸಿ ಮತ್ತು ಮುಚ್ಚಿ. ಪ್ರತ್ಯೇಕ ಸಾರ್ವಜನಿಕ HTTP ಪರೀಕ್ಷೆಗಾಗಿ, HTTP ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿ ಯಿಂದ ಅಭ್ಯರ್ಥಿ ಎಂಡ್ಪಾಯಿಂಟ್ ಒದಗಿಸುತ್ತದೆ; ಟೈಮೌಟ್ಗಳನ್ನು ಹೋಲಿಸುವಾಗ ಗಮ್ಯಸ್ಥಾನವನ್ನು ಸ್ಥಿರವಾಗಿರಿಸಿ.
| ಮಿತಿ | ಪರಿಹರಿಸಿದ ಕಾಯುವಿಕೆ |
|---|---|
| ಸಂಪರ್ಕ ಟೈಮೌಟ್ | ಸಂಪರ್ಕ ಸ್ಥಾಪನೆ |
| ಸಾಕೆಟ್ ಟೈಮೌಟ್ | CONNECT ವಿನಿಮಯ ಸೇರಿದಂತೆ ಡೀಫಾಲ್ಟ್ I/O ನಿಷ್ಕ್ರಿಯತೆ |
| ಪೂಲ್ನಿಂದ ಪಡೆಯುವಿಕೆ / ಅಪ್ಲಿಕೇಶನ್ ಪ್ರತಿಕ್ರಿಯೆ | ಪ್ರತ್ಯೇಕವಾಗಿ ಸಂರಚಿಸಿದ ಇತರ ಹಂತಗಳು |
CONNECT ನಂತರ, TLS ತನ್ನದೇ ಆದ ಸೆಟಪ್ ಮಿತಿಯನ್ನು HttpClient 5 ನ TLS ಸಂರಚನೆಯ ಮೂಲಕ ಬಯಸಬಹುದು. ನಿಷ್ಕ್ರಿಯತೆ ಮತ್ತು ಒಟ್ಟು ಗಡುವನ್ನು ಸಹ ಪ್ರತ್ಯೇಕಿಸಿ: ಮಧ್ಯಂತರ ಬೈಟ್ಗಳು ಅಥವಾ ಪುನರಾವರ್ತಿತ ದೃಢೀಕರಣ ವಿನಿಮಯಗಳು ಒಟ್ಟು ಸಮಯವನ್ನು ವಿಸ್ತರಿಸಬಹುದು. ಅಪ್ಲಿಕೇಶನ್ನ ಬೆಂಬಲಿತ ಗಡುವು ಅಥವಾ ರದ್ದತಿ ನೀತಿಯನ್ನು ಬಳಸಿ ಇಡೀ ಕಾರ್ಯಾಚರಣೆಗೆ ಒಂದು ಬಜೆಟ್.