Spring Boot中得定時任務執行一段時間後突然停了
描述:
定時器執行一段時間之後自己停止。
原因:
http請求出現某種錯誤的時候,http請求僵死,導致執行緒也不再往下執行。最終導致後面的定時任務也不再執行
由於httpclient自己沒有預設超時時間的設定,當開發人員沒有設定超時間是的時候,在server的服務端網路出現問題或者一直不返回給客戶端資料結果,就發現client端的請求執行緒一直卡住不會釋放,如果這個是執行緒池中的執行緒,就會一直佔用執行緒池資源,導致執行緒池不能響應後續的的任務。
解決方法:在http請求的程式碼中設定超時時間
HttpURLConnection conn = initHttpConnection(url);
conn.setConnectTimeout(20*1000);
conn.setReadTimeout(20*1000);
相關文章
- Laravel 定時任務突然無法執行Laravel
- spring boot中的定時任務Spring Boot
- spring執行定時任務Spring
- spring boot 定時任務Spring Boot
- Spring Boot(九):定時任務Spring Boot
- php後臺定時執行任務PHP
- Spring Boot 配置 Quartz 定時任務Spring Bootquartz
- PHP定時執行任務PHP
- Spring Boot中引入定時任務Spring Boot
- 使用spring @Scheduled註解執行定時任務、Spring
- Spring Task 定時任務 - 多執行緒配置Spring執行緒
- Spring boot 非同步/定時任務/郵件Spring Boot非同步
- Spring Boot 中實現定時任務的兩種方式Spring Boot
- ASP.NET 中的定時執行任務ASP.NET
- quartz定時任務時間設定quartz
- Spring 定時任務Spring
- laravel框架任務排程(定時執行任務)Laravel框架
- java web每天定時執行任務JavaWeb
- **java設定一段程式碼執行超時時間(轉)**Java
- Spring Boot中有多個@Async非同步任務時,記得做好執行緒池的隔離!Spring Boot非同步執行緒
- Spring - Task定時任務Spring
- Spring Boot 實現定時任務的 4 種方式Spring Boot
- Spring Boot系列之使用@Scheduled實現定時任務Spring Boot
- Linux 執行定時任務後,Laravel 專案報錯LinuxLaravel
- SpringBoot執行定時任務@ScheduledSpring Boot
- PHP定時執行任務的實現PHP
- kettle執行定時任務,kitchen.batBAT
- Android利用AlarmManager執行定時任務Android
- Ext.util.TaskRunner定時執行任務
- Django配置celery執行非同步任務和定時任務Django非同步
- JBOSS5.1執行一段時間後掛掉
- Spring Boot 定時任務的技術選型對比Spring Boot
- Spring Boot之使用Scheduled註解實現定時任務Springboot
- 『學了就忘』Linux系統定時任務 — 88、迴圈執行定時任務Linux
- spring定時任務註解Spring
- Spring Scheduler定時任務 + QuartzSpringquartz
- spring定時任務相關Spring
- Springboot-之定時任務,啟動執行任務Spring Boot