我们使用NodeJs做服务器开发,使用的是Express框架,数据库用的阿里云的MySQL RDS,nodejs连接mysql的包选用的是mysql(https://www.npmjs.com/package...
这几天只要UV上到1000,就会出现“跟数据库有关的请求无返回”的情况,一直是pending状态。页面都能正常返回。重启一下服务器就又好了。
从服务器后台和数据库服务器后台的日志中都看不到任何错误,监控也都正常。
请问这是什么情况啊?该怎么解决?
PS:我们现在的数据库操作代码都是抄的网上的入门级教程,在实际应用中总感觉不够靠谱。请问哪里可以找到企业级的MySQL数据库操作教程啊,比如要考虑哪些方面,如何编写可靠的数据库代码等。多谢
PHPz2017-04-17 15:56:20
개인적인 추측을 말씀드리자면 연결 풀이 사용되지 않습니다. mysql show processlist를 열어서 연결을 살펴보세요.
PHP中文网2017-04-17 15:56:20
프로세스가 중단된 상태여야 합니다. connect-timeout 구성 요소를 설치하고 3초 동안 응답이 없으면 503 시간 초과 정보를 반환하도록 설정해야 합니다. 또한 node.js를 유지하려면 데몬 프로세스를 사용하세요. 서버 실행 중입니다. Express가 프로젝트를 마친 후 사용된 데몬 프로세스는 st입니다. rongloop, 나는 또한 당신이 언급한 문제에 대해 걱정하고 있습니다. 현재 우리가 생각할 수 있는 것은 이것뿐입니다. nodejs와 express 개발에 관한 책도 있습니다. 데이터베이스를 운영하면서 이 ORM 프레임워크에 대해 더 많이 소통할 수 있기를 바랍니다.