Lorsque j'utilise HttpClient d'Apache, je peux définir les trois valeurs de délai d'expiration suivantes (millisecondes), mais je n'ai pas bien compris la différence, alors j'ai essayé de les résumer moi-même.
import org.apache.http.client.HttpClient;
import org.apache.http.client.config.RequestConfig;
RequestConfig config = RequestConfig.custom()
.setConnectTimeout(30000)
.setConnectionRequestTimeout(30000)
.setSocketTimeout(30000)
.build();
HttpClient httpClient = HttpClients.custom()
.setDefaultRequestConfig(config)
.build();
ConnetionTimeout La valeur du délai pour envoyer une demande de connexion au serveur et recevoir une réponse indiquant que la connexion a été établie. En bref, définissez le temps alloué pour qu'une connexion soit établie avec une prise de contact à trois.
ConnectionRequestTimeout La valeur du délai entre l'envoi d'une demande au serveur et le renvoi d'une réponse une fois la connexion ci-dessus terminée.
SocketTimeut La valeur du délai d'expiration utilisée pour surveiller la communication du socket. Dans la communication socket, les paquets sont reçus en continu, mais si l'intervalle de réception est plus long que cette valeur, un délai (= SocketTimeoutException) se produit.
Recommended Posts