Rumah > pangkalan data > tutorial mysql > Tamat Masa Sambungan Pangkalan Data Spring Boot: Bagaimana untuk Mengkonfigurasi Kolam Sambungan dengan Berkesan?

Tamat Masa Sambungan Pangkalan Data Spring Boot: Bagaimana untuk Mengkonfigurasi Kolam Sambungan dengan Berkesan?

Susan Sarandon
Lepaskan: 2024-12-10 01:42:10
asal
154 orang telah melayarinya

Spring Boot Database Connection Timeout: How to Effectively Configure Connection Pools?

Isu Tamat Masa Sambungan Spring Boot dengan Pangkalan Data

Ringkasan Isu

Aplikasi Spring Boot menggunakan Spring Data JPA dan Hibernate dengan MySQL mungkin menghadapi ralat tamat masa sambungan. Khususnya, mesej ralat "CommunicationsException: Paket terakhir yang berjaya diterima daripada pelayan ialah >4<24 milisaat yang lalu" menunjukkan bahawa sambungan antara aplikasi dan pangkalan data telah tamat masa.

Penyelesaian Kemungkinan Menggunakan autoReconnect

Semasa menggunakan spring.datasource.testonborrow=true dan spring.datasource.validationQuery=SELECT 1 ialah penyelesaian yang berdaya maju, ia tidak disyorkan. Pendekatan yang lebih baik melibatkan konfigurasi kolam sambungan dengan sewajarnya.

Penyelesaian Disyorkan: Konfigurasi Kolam Sambungan

  1. Tetapkan Bilangan Maksimum Sambungan:

    • spring.datasource.max-active=10
    • Ini menentukan bilangan maksimum sambungan serentak yang dibenarkan dalam kolam.
  2. Tetapkan Sambungan Awal dan Terbiar Had:

    • spring.datasource.initial-size=5
    • Ini menetapkan bilangan sambungan awal dalam pool.
    • spring.datasource. max-idle=5
    • Ini menetapkan bilangan maksimum sambungan melahu dalam pool.
    • spring.datasource.min-idle=1
    • Ini menetapkan bilangan minimum sambungan melahu dalam kolam.
  3. Dayakan Sambungan Pengesahan:

    • spring.datasource.test-while-idle=true
    • Ini mengesahkan sambungan semasa ia melahu.
    • spring.datasource.test -on-borrow=true
    • Ini mengesahkan sambungan apabila ia diambil dari pool.
    • spring.datasource.validation-query=SELECT 1
    • Ini menetapkan pertanyaan pengesahan untuk dilaksanakan.
  4. Tetapkan Tempoh Pengesahan dan Terbiar Tamat masa:

    • spring.datasource.time-between-eviction-runs-millis=5000
    • Ini menentukan kekerapan untuk menjalankan pengesahan pertanyaan.
    • spring.datasource.min-evictable-idle-time-millis=60000
    • Ini menetapkan umur maksimum sambungan melahu sebelum ia dianggap boleh disingkirkan.

Dengan mengkonfigurasi kumpulan sambungan dengan cara ini, sambungan disahkan secara berkala, melahu sambungan dibersihkan dengan kerap, dan sambungan baharu diperoleh apabila perlu. Spring Boot secara automatik mengendalikan proses penyambungan semula, memastikan sambungan sentiasa tersedia.

Atas ialah kandungan terperinci Tamat Masa Sambungan Pangkalan Data Spring Boot: Bagaimana untuk Mengkonfigurasi Kolam Sambungan dengan Berkesan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan