MySQL ile SQLAlchemy kullanarak bir Flask web uygulaması var ve bir scopedsession() kurdum. Ayrıca her istek bittikten sonra session.remove() öğesini çağıran bir teardown_request işleyicisi de var. Bazı garip bir nedenle, bir gün veya daha fazla bir süre için web uygulamasında herhangi bir istek yapılmazsa, uygulama "Operationalerror: MySQL Server gitti" olur. Benim ayıklama misyon olarak SQLAlchemy MySQL bağlantımın her zaman uykuya dalması garip mi?
, ben GÖSTER processlist bakıp şu gördüğümüz:39817253 | sqladmin | my_host | kb_dev | Sleep | 174 |
174 saniye sayısı "uyku" olmuştur benim uygulamadan bağlantıdır. Uygulama başka bir istekte bulunmazsa saymaya devam eder.
Uygulamam, isteğim bittikten sonra bile MySQL bağlantısına dayanıyor gibi görünüyor! Uygulamamla eşzamanlı olarak veya istemediğim kaç tane talep olursa olsun genellikle tek bir süreç var.
Sorum, bağlantının bu kadar uzun süre "uyku" olması normal midir? Uzatılmış uykunun, MySQL'in "OperationError: Mysql gitti" hatasına neden olan belirli bir zaman aşımı sonrasında bağlantıyı kesmesine neden olduğundan eminim.
Sorunu çözdünüz mü? Pool_recycle ayarı benim için çalışmıyor. –