Jersey, pelaksanaan rujukan JAX-RS, tidak semestinya menguruskan sambungan dan membaca tamat masa secara langsung. Sebaliknya, ia bergantung kepada perpustakaan klien HTTP yang anda gunakan. Pilihan yang paling biasa adalah HttpClient
(dari Apache httpclient) dan URLConnection
. Konfigurasi masa tamat berlaku di peringkat pelanggan, bukan dalam jersi itu sendiri. Ini membolehkan penetapan masa tamat sambungan (masa untuk membuat sambungan), waktu tamat soket (masa untuk membaca data dari soket selepas sambungan ditubuhkan), dan sambungkan masa tamat permintaan (masa untuk melengkapkan permintaan sambungan). Betul. Tanpa tamat masa, aplikasi anda boleh menunggu selama -lamanya untuk respons dari pelayan, yang membawa kepada aplikasi yang tidak responsif dan keletihan sumber. Menetapkan sambungan yang sesuai dan baca tamat masa adalah penting. Di samping itu, pertimbangkan faktor -faktor ini:
HttpClient
RequestConfig
Masalah rangkaian:
RequestConfig requestConfig = RequestConfig.custom() .setConnectTimeout(5000) // 5 seconds .setSocketTimeout(10000) // 10 seconds .setConnectionRequestTimeout(2000) // 2 seconds .build(); CloseableHttpClient httpClient = HttpClients.custom() .setDefaultRequestConfig(requestConfig) .build(); ClientConfig clientConfig = new ClientConfig(); clientConfig.property(ClientProperties.CONNECT_TIMEOUT, 5000); // milliseconds clientConfig.property(ClientProperties.READ_TIMEOUT, 10000); // milliseconds clientConfig.property(ClientProperties.FOLLOW_REDIRECTS, false); clientConfig.register(new LoggingFilter()); Client client = ClientBuilder.newClient(clientConfig).register(new JacksonFeature()); // ... your Jersey client code using 'client' ... httpClient.close();
SocketTimeoutException
, dan lain -lain). Log ini memberikan maklumat penting mengenai kapan dan di mana masa tamat berlaku. Masalah. Sahkan bahawa klien HTTP yang dipilih dikonfigurasi dengan betul dan masa tamat yang dikendalikan dengan betul. Ini membantu mengasingkan penyelesaian yang berpotensi dan ujian. Ini mungkin mendedahkan kelewatan yang tidak dijangka yang tidak berkaitan secara langsung dengan tamat masa. Ingatlah untuk mempertimbangkan kedua-dua faktor sisi pelanggan dan pelayan. Atas ialah kandungan terperinci Mengkonfigurasi sambungan jersi dan baca tamat masa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!