Tôi đã liên hệ với những người trên node-mysql trên trang Github của họ và nhận được một số câu trả lời chắc chắn.
-
MySQL thực sự loại bỏ các kết nối nhàn rỗi. Có một biến MySQL "wait_timeout" đặt số giây trước thời gian chờ và mặc định là 8 giờ. Chúng ta có thể đặt giá trị mặc định lớn hơn nhiều. Sử dụng
show variables like 'wait_timeout';
để xem cài đặt thời gian chờ của bạn vàset wait_timeout=28800;
để thay đổi nó. -
Theo vấn đề này , node-mysql không cắt bỏ các kết nối nhóm sau các loại ngắt kết nối này. Các nhà phát triển mô-đun đã khuyến nghị sử dụng nhịp tim để duy trì kết nối, chẳng hạn như gọi
SELECT 1;
trên một khoảng thời gian. Họ cũng khuyến nghị sử dụng mô-đun node-pool và tùy chọn nhàn rỗiTimeoutMillis của nó để tự động cắt bỏ các kết nối không hoạt động.