Logo ca.boatexistence.com

El client http ha de ser transitori o únic?

Taula de continguts:

El client http ha de ser transitori o únic?
El client http ha de ser transitori o únic?

Vídeo: El client http ha de ser transitori o únic?

Vídeo: El client http ha de ser transitori o únic?
Vídeo: Actitud | Victor Küppers | TEDxAndorralaVella 2024, Maig
Anonim

La classe HttpClient és més adequada com a singleton per a un domini d'aplicació únic. Això significa que el singleton s'ha de compartir entre diverses classes de contenidors. Amb aquesta tàctica, obteniu un singleton, però això dificulta compartir-lo. La classe HttpClient implementa la interfície IDdisposable.

Hem de crear una nova instància única de HttpClient per a totes les sol·licituds?

Tot i que implementa la interfície IDdisposable, en realitat és un objecte compartit. Això significa que sota les cobertes és reentrant i sense fil. En lloc de crear una nova instància d'HttpClient per a cada execució, hauríeu de compartir una única instància d'HttpClient durant tota la vida útil de l'aplicació.

Hauria de reutilitzar

HttpClient té la intenció de per ser creat una vegada i reutilitzar-se durant tota la vida d'una aplicació. Instanciar una classe HttpClient per a cada sol·licitud esgotarà el nombre de sòcols disponibles amb càrregues pesades. Això provocarà errors de SocketException.

HttpClient no està gestionat?

Tot i que HttpClient implementa indirectament la interfície IDdisposable, l'ús estàndard d'HttpClient és no eliminar-la després de cada sol·licitud. L'objecte HttpClient està pensat per a viure durant el temps que la vostra aplicació necessiti fer sol·licituds

HttpClient és segur per a fils?

HttpClient és totalment segur quan s'utilitzaamb un gestor de connexions segur com MultiThreadedHttpConnectionManager. … Al mateix temps, la instància HttpClient i el gestor de connexions s'han de compartir entre tots els fils per obtenir la màxima eficiència.

Recomanat: