我正在使用spring啓動並通過jpa使用tomcat連接池進行休眠。你能幫我理解春天在交易過程中如何使用數據庫連接。例如,考慮以下情況:春季交易邊界和數據庫連接控股
- 我們有2個連接的DB連接池。
- Spring啓動一個事務,即使用@Transactional註解修飾的調用方法。
- 這種方法做一個DB更新
- 的調用外部服務
- 作爲響應從外部服務接收,它更新數據庫和回報。
- 春季提交事務
假設外部服務(步驟4)需要1分鐘才能完成,有多少DB連接將在數據庫池?假設Spring在事務完成之前一直保持DB連接,那麼在此期間接收到的任何請求將只有1個數據庫連接可用,並且如果我們收到多個請求,它們將不得不等待數據庫連接。
請確認我的理解,如果它是正確的,建議我如何在高交易量系統中處理這種情況。
感謝