Perlukah httpclient bersifat sementara atau tunggal?

Isi kandungan:

Perlukah httpclient bersifat sementara atau tunggal?
Perlukah httpclient bersifat sementara atau tunggal?

Video: Perlukah httpclient bersifat sementara atau tunggal?

Video: Perlukah httpclient bersifat sementara atau tunggal?
Video: What Is GraphQL? REST vs. GraphQL 2024, November
Anonim

Kelas HttpClient adalah lebih sesuai sebagai singleton untuk domain aplikasi tunggal. Ini bermakna singleton harus dikongsi merentas berbilang kelas kontena. Dengan taktik ini, anda mendapat singleton, tetapi ini menyukarkan untuk dikongsi. Kelas HttpClient melaksanakan antara muka IDisposable.

Adakah kita perlu membuat satu contoh HttpClient baharu untuk semua permintaan?

Walaupun ia melaksanakan antara muka IDisposable, ia sebenarnya adalah objek kongsi. Ini bermakna bahawa di bawah selimut ia adalah kemasukan semula dan selamat. Daripada mencipta tika baharu HttpClient untuk setiap pelaksanaan, anda harus berkongsi satu tika HttpClient untuk sepanjang hayat aplikasi.

Adakah anda perlu menggunakan semula

HttpClient ialah berniat untuk digunakan sekali dan digunakan semula sepanjang hayat aplikasi. Menghidupkan kelas HttpClient untuk setiap permintaan akan menghabiskan bilangan soket yang tersedia di bawah beban berat. Ini akan mengakibatkan ralat SocketException.

Adakah HttpClient tidak diurus?

Walaupun HttpClient melaksanakan antara muka IDisposable secara tidak langsung, penggunaan standard HttpClient bukanlah untuk melupuskannya selepas setiap permintaan. Objek HttpClient bertujuan untuk hidup selama aplikasi anda perlu membuat permintaan

Adakah HttpClient thread-selamat?

HttpClient selamat untuk benang sepenuhnya apabila digunakan dengan pengurus sambungan selamat benang seperti MultiThreadedHttpConnectionManager. … Pada masa yang sama, contoh HttpClient dan pengurus sambungan harus dikongsi antara semua urutan untuk kecekapan maksimum.

Disyorkan: