我们使用NodeJs做服务器开发,使用的是Express框架,数据库用的阿里云的MySQL RDS,nodejs连接mysql的包选用的是mysql(https://www.npmjs.com/package...
这几天只要UV上到1000,就会出现“跟数据库有关的请求无返回”的情况,一直是pending状态。页面都能正常返回。重启一下服务器就又好了。
从服务器后台和数据库服务器后台的日志中都看不到任何错误,监控也都正常。
请问这是什么情况啊?该怎么解决?
PS:我们现在的数据库操作代码都是抄的网上的入门级教程,在实际应用中总感觉不够靠谱。请问哪里可以找到企业级的MySQL数据库操作教程啊,比如要考虑哪些方面,如何编写可靠的数据库代码等。多谢
PHP中文网2017-04-17 15:56:20
應該是進程有掛起吧,應該安裝一個connect-timeout元件,設定3秒連結無回應就回傳503超時的信息,另外用守護程式來維持node.js的伺服器運行,我們也是剛開始用express做完一個項目,用的守護進程是strongloop,也是擔心出現你說的問題,目前我們這邊能想到的就是這些了,另外有本書是nodejs與express開發,這本書上也有些內容可以幫助你的,操作資料庫我們選擇的是sequelize這個orm框架,希望多多交流