1. Pendahuluan
Dengan pengembangan sistem perusahaan, aplikasi sebagian besar mengadopsi struktur terdistribusi, yang sangat bergantung pada stabilitas jaringan. Namun, karena ketidakstabilan yang melekat pada jaringan, perlu untuk mempertimbangkan bagaimana memastikan ketahanan aplikasi dalam hal ketidakstabilan jaringan selama pengembangan sistem. Menetapkan batas waktu jaringan adalah salah satu cara untuk memastikan ketahanan aplikasi. Setelah mengatur pengaturan batas waktu jaringan, permintaan akan dipaksa untuk berakhir jika gagal menyelesaikan waktu yang ditentukan, memastikan bahwa program tidak memiliki penyumbatan utas yang tidak terbatas, secara efektif meningkatkan ketersediaan aplikasi.
Saya tidak akan mengatakan banyak hal di bawah ini, mari kita lihat perkenalan terperinci bersama.
2. Perbandingan antara batas waktu tidak diatur dan pengaturan batas waktu
1. Legenda Permintaan Jaringan:
Kasus Timeout Permintaan Jaringan
2. Setelah mengatur waktu batas waktu, minta legenda:
Kasus Timeout Permintaan Jaringan - Tetapkan batas waktu
3. Pengaturan batas waktu jaringan umum
1. Pengaturan waktu httpclient (kacang musim semi)
Konfigurasi
<bean id = "multithreadedHttpConnectionManager"> <properti name = "params"> <bean> <properti name = "maxtotalConnections" value = "$ {maxtotalConnections: 300}" /<name properti = "defaultMaxConnectionSperhost" value = "$ {default, out- outkonnospon" outhospon "outhospon" outhospon "outhospon" outpon (300 {300) milidetik. -> <name properti = "ConnectionTimeout" value = "$ {ConnectTimeout: 10000}" /> <!-Socket Timeout, Milliseconds. -> <name properti = "soTimeout" value = "$ {readTimeout: 600000}"/> <name properti = "staleCheckingEnabled" value = "$ {staleCheckingEnabled: true}"/> </ bean> </propert> </ bean> <bean id = "httpclient"> </bean> </tower> <bean> <bean id = "httpclient"> </tourg bean = "multithreadedhttpconnectionManager"/> </constructor-Arg> </bean>Skenario penggunaan httpinvoker
Konfigurasikan httpinvokerRequestExecutor, angkanya SimpleHttpinVokerRequestExecutor yang digunakan secara default di httpinvokerproxyfactorybean, dan konfigurasikan batas waktu jaringan. Lihat "Konfigurasi".
<bean id = "httpinvokerRequestExecutor"> <constructor-Arg> <ref bean = "httpclient" /> < /constructor-Arg> < /bean> <bean id = "xxxxservice"> <nama property = "layanan /" $ "$" name = "$ {xxxxservice"> value = "com.xxxxservice" /> <name properti = "httpinvokerRequestExecutor" ref = "httpinvokerRequestExecutor" /> < /bean>2. Pengaturan waktu httpclient (kode keras)
Mencicipi
RequestConfig config = requestConfig.custom () .setsocketTimeout (1*1000) // socket socket timeout, milidetik. .setConnectionRequestTimeout (1*1000) // Saat menggunakan kumpulan koneksi untuk mengelola koneksi, dapatkan waktu batas waktu koneksi, milidetik dari kumpulan koneksi. .setConnectTimeout (5*1000) // Batas waktu pembentukan koneksi, milidetik. .membangun(); CloseableHttpClient httpClient = httpclients.custom () .setDefaultrequestConfig (config) // .build (); CloseableHttpresponse httpresponse = httpclient.execute (httpget); // Jalankan permintaan
3. Pengaturan Batas Waktu Mail
Proyek yang dikembangkan berdasarkan kerangka kerja musim semi dapat digunakan dengan sangat mudah
org.springframework.mail.javamail.javamailsenderImpl mengimplementasikan pengingat email dan fungsi lainnya.
Konfigurasi
<bean id = "mailsender" p: host = "$ {mailsender.host}" p: username = "$ {mailsender.username}" p: kata sandi = "$ {mailsender.password}"> <name properti = "javaMailproperty"> <props> <prop Key = "mail. </prop> <prop key = "mail.smtp.timeout"> $ {mailsender.smtp.timeout: 10000} </prop> <prop key = "mail.smtp.connectiontimeout"> $ {mailsender.smtp.connectionTimeout: 10000} </prop> </props> </property> </bean> bean>Deskripsi JavamailProperties
CATATAN: Daftar nama parameter properti dapat meminta dokumentasi API Javamail.
Meringkaskan
Di atas adalah seluruh konten artikel ini. Saya berharap konten artikel ini memiliki nilai referensi tertentu untuk studi atau pekerjaan semua orang. Jika Anda memiliki pertanyaan, Anda dapat meninggalkan pesan untuk berkomunikasi. Terima kasih atas dukungan Anda ke wulin.com.
merujuk ke