node程序僵死问题总结
发布于 10 年前 作者 cicada 4162 次浏览 最后一次编辑是 8 年前

之前在这里获得过帮助,问题解决了,小结一下,也许对其他兄弟有所启发。

网站项目:火星问答 www.huoxingwenda.com

问题描述:当有较多用户访问时,正常运行一段时间就会出现程序僵死,页面无法打开的问题

排查及解决: 1、在测试环境里正常,程序重启后也能运行正常运行一段时间,而且程序僵死后并没退出,所以应该不是显性的程序错误。 2、在程序错误时,尝试访问不同类型页面,发现不需要数据库数据的页面可以访问,一涉及到数据库就不能访问,但数据库运行正常,所以应该是程序和数据库连接问题。由于所有与数据库相关页面都不能正常访问,也说明不是单个数据查询出现问题,而是程序无法连接数据库了。 3、由于此程序使用了pool功能,程序通过pool分配的connection与数据库连接,出现以上问题,初步断定是connection无法正常分配了。 4、检查程序中涉及到pool的程序,发现某些条件下没能及时release connection,导致连接资源耗尽。修复这些地方,问题解决 node js里都是异步的,对于占用资源的分支一定要保证无论是否正确执行完都要释放相关资源,基本就不会僵死了

2 回复

楼主这应用挺有意思。就是题目太娱乐化

呵呵,尽量好玩实用,里面的题目大多是平时能接触到或使用到的,在玩中反而容易增长见闻和记牢知识,像那些古诗词问答啊,世界最大最小最老之类的,八辈子和自己没关系的题目,我自己不喜欢,所以网站审核的时候很少通过

回到顶部