在Java領域,談到網絡程式設計,可能大家腦海裡第一反應就是MINA,NETTY,GRIZZLY等優秀的開源架構。沒錯,不過在深入探究這些架構之前,我們需要先從最original的技術探究開始(當然,需要大家先熟悉java.net.*類庫)。這裡,我要和大家分享一下HttpComponents項目的部分元件特性。HttpClient,想必大家早都接觸過了吧。HttpComponents和HttpClient的”血緣“有點像guava和google-collection的關系。目前,HttpComponents已經是Apache的頂級項目了,它旨在為我們提供一個Http協定相關的Java平台工具集。
HttpClient httpClient = new SystemDefaultHttpClient();
HttpClientUtil.setMaxConnections(httpClient, 10000);
HttpClientUtil.setMaxConnectionsPerHost(httpClient, 1000);
HttpClientUtil.setConnectionTimeout(httpClient, 3000);