Rumah > pangkalan data > tutorial mysql > Mengapa Saya Mendapat Ralat 'baca ECONNRESET' pada Pelayan Node.js Terbiar Disambungkan ke MySQL?

Mengapa Saya Mendapat Ralat 'baca ECONNRESET' pada Pelayan Node.js Terbiar Disambungkan ke MySQL?

DDD
Lepaskan: 2024-11-26 14:35:10
asal
781 orang telah melayarinya

Why Am I Getting

MySQL "read ECONNRESET" Ralat pada Idle Node.js Server: Punca dan Penyelesaian

Pengenalan

Menyambung pelayan Node.js ke MySQL melalui modul node-mysql boleh menghadapi cabaran apabila masa melahu membawa kepada membaca ralat ECONNRESET.

Soalan 1: Pemutus Sambungan

Ya, isu itu nampaknya berpunca daripada pemangkasan MySQL melahu sambungan kerana tetapan tunggu_masa tamatnya. Had 8 jam lalai boleh tamat tempoh selepas meninggalkan pelayan melahu selama beberapa jam.

Soalan 2: Had Kolam Sambungan

Sementara node-mysql menguruskan kumpulan sambungan, ia mungkin tidak mengesan pemutusan sambungan sehingga pertanyaan dicuba. Kecacatan reka bentuk ini menjadikan ralat tidak dapat dielakkan pada pertanyaan pasca melahu yang pertama.

Soalan 3: Punca Luaran

Walaupun ralat ECONNRESET membaca adalah perkara biasa, ia patut mempertimbangkan potensi lain punca. Walau bagaimanapun, siasatan lanjut menunjukkan isu tamat masa MySQL dan bukannya faktor luaran.

Resolusi

1. Tingkatkan MySQL Timeout:

Tetapkan pembolehubah wait_timeout MySQL kepada nilai yang lebih besar (cth., 28800 saat selama 8 jam) untuk mengelakkan pemangkasan sambungan.

2. Gunakan Pertanyaan Denyutan Jantung:

Lakukan pertanyaan berkala (cth., PILIH 1;) untuk memastikan sambungan hidup dan mengelakkan pemangkasan.

3. Laksanakan Pemangkasan Sambungan Terbiar:

Gunakan modul nod-pool dengan pilihan idleTimeoutMillisnya untuk memangkas sambungan terbiar secara automatik.

Kesimpulan

Oleh kerana menangani tetapan tamat masa MySQL dan meningkatkan pengendalian sambungan dalam nod-mysql, pembangun boleh kurangkan ralat ECONNRESET baca pada pelayan Node.js terbiar. Memandangkan punca luaran yang berpotensi juga adalah bijak, tetapi dalam kes ini, tunggu_masa tunggu MySQL nampaknya menjadi punca utama.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'baca ECONNRESET' pada Pelayan Node.js Terbiar Disambungkan ke MySQL?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan