Używam org.apache.http.client.HttpClient. Mam pytanie, które dotyczy użycia tej klasy.org.apache.http.client.HttpClient - po jednym na żądanie?
Czy mogę utworzyć nowe HttpClient
dla każdego żądania (np. Z powodu lekkiego obiektu) lub lepiej użyć unikalnej instancji na wiele żądań http (np. Ponieważ tworzenie/usuwanie jest kosztowne)? Jeśli konieczne jest użycie tylko jednej instancji HttpClient
, jest ona bezpieczna dla wątku (np. Może obsługiwać wiele żądań http w tym samym czasie) lub w tym przypadku najlepiej jest utworzyć pulę o wartości HttpClient
?
Właściwie, tworzę nowy HttpClient na żądanie. Podejrzewam, że muszę utworzyć unikalną instancję, która zostanie zamknięta pod koniec korzystania z mojej aplikacji za pomocą getConnectionManager().shutdown()
, ale nie wiem, czy uda mi się utrzymać równoległość opartą na wątkach.
Wskazówka - 'DefaultHttpClient' pochodzi z adnotacją' @ ThreadSafe'. –
Och, miło ... więc twierdzę, że powinien obsługiwać wiele żądań http na czas. –
Tak. [Więcej tutaj] (http://hc.apache.org/httpclient-3.x/performance.html). Zobacz "Ponownie użyj instancji HttpClient". –