如何提高NodeJS程序的运行的稳定性
如何提高NodeJS程序运行的稳定性
我们常通过node app.js方式运行nodejs程序,但总有一些异常或错误导致程序运行停止退出。如何保证node程序的稳定运行?
下面是一些可以考虑的方案:
1.使用最新的node版本程序。
2.使用try{...} catch(error){...}。
3.使用domains。
4.使用forever,upstart,monit,supervisor,mother.js等。
5.使用cluster。
6.使用 process.on('uncaughtException', function(err){...}); 来处理未被捕捉的错误。
参考:
http://shapeshed.com/uncaught-exceptions-in-node/ Uncaught Exceptions in Node.js
http://cnodejs.org/topic/4f16442ccae1f4aa270010e7 如何提高NodeJS程序的稳定性
http://deadhorse.me/nodejs/2013/04/13/exception_and_domain.html Node.js 异步异常的处理与domain模块解析
http://nodejs.org/api/process.html#process_event_uncaughtexception
http://nodejs.org/api/domain.html
https://github.com/fengmk2/domain-middleware
https://github.com/fengmk2/graceful
https://github.com/FGRibreau/forever-webui
如何提高NodeJS程序的运行的稳定性的更多相关文章
- 如何提高nodejs程序的稳定性,健壮性
在网上看到一些帖子,吐糟,质疑nodejs 程序的稳定性,为什么呢?其一,可能这个和javascript有关吧,node是拿javascript去实现的,而javascript又被称为是“世界上误解最 ...
- 使用Termux,在手机上做nodejs编程,运行nodejs程序。
如果你是一名nodejs开发者,是否想过以下问题:在手机上运行nodejs程序?用手机当nodejs服务器?在手机上做nodejs编程?YES!使用Termux,以上都可以做到! 下面展示如何实现这个 ...
- 注册nodejs程序为windows服务
转载地址:http://www.grati.org/?p=236 应lemonhall要求,写一篇在windows中部署nodejs程序的文章,并提供了how to node上 “deploying- ...
- supervisor提高nodejs调试效率
1.NodeJS环境安装 2.安装supervisor npm install supervisor -g (表示安装到全局路径下) 开发nodejs程序,调试的时候,无论你修改了代码的哪一部分,都 ...
- 动态修改 NodeJS 程序中的变量值
如果一个 NodeJS 进程正在运行,有办法修改程序中的变量值么?答案是:通过 V8 的 Debugger 接口可以!本文将详细介绍实现步骤. 启动一个 HTTP Server 用简单的 Hello ...
- 第一个Nodejs程序
我的第一个Nodejs程序:Hello World var http = require("http"); http.createServer(function(request, ...
- 解读30个提高Web程序执行效率的好经验
其实微博是个好东西,关注一些技术博主之后,你不用再逛好多论坛了,因为一些很好的文章微博会告诉你,最近看到酷勤网推荐的一篇文章<30个提高Web程序执行效率的好经验>,文章写得不错,提到一些 ...
- 让.net程序自动运行在管理员权限下
原文:让.net程序自动运行在管理员权限下 如何让.net程序自动运行在管理员权限下 VS2010 c# 编译的WINFORM程序 在Win7 以管理员身份运行 windows 7和vista提高的系 ...
- Node入门教程(4)第三章:第一个 Nodejs 程序
第一个 Nodejs 程序 本教程仅适合您已经有一定的JS编程的基础或者是后端语言开发的基础.如果您是零基础,建议您先学一下老马的前端免费视频教程 第一步:创建项目文件夹 首先创建 demos 文件夹 ...
随机推荐
- JAVA-STRUTS-2x的项目配置
首先是web.xml的配置,这个是项目加载的开始. <display-name></display-name> <!--struts2配置开始--> <fil ...
- Python封装与隐藏
今日内容: 1.封装与隐藏2.property3.绑定方法与非绑定方法 知识点一:封装与隐藏 1.什么封装: 封:属性对外是隐藏的,但对内是开放的 装:申请一个名称空间,往里装入一系列名字 ...
- 101 Hack 50
101 Hack 50 闲来无事.也静不下心,打个代码压压压惊 Hard Questions by kevinsogo Vincent and Catherine are classmates who ...
- 指定特殊的安装目录用configure进行配置
linux - Make install, but not to default directories? - Stack Overflow I want to run 'make install' ...
- 【Luogu】P3761城市(dfs)
题目链接 emmm我思维好水…… 想了一会lct发现好像不对,然后开始转DP稍微有一点思路,然后看了题解…… 首先可以枚举边,然后原树被你拆成了两个子树. 设D1D2是两个子树的直径,W1W2是子树内 ...
- kb-09-线段树--区间合并比较繁
/* hdu-1540 题意:一个线段,长度为n,三种操作,Dx,挖掉某个点:R,恢复最近被挖掉的点:Qx查询该点所在的连续区间的长度: 树的节点维护三个变量,该节点左边界开始连续的个数ll,右边界开 ...
- hihoCoder #1157 建造金字塔
这道题我想了一天才想清楚做法.AC 了之后去看别人写的题解,都是三言两语意识流式描述,我并不能读懂.我觉得很自卑,为何人家解这道题如此轻松.不过,我还是决定把我的解法写下来,并且一定要写清楚. 思路 ...
- P1875 佳佳的魔法药水 (最短路,DP)
题目链接 Solution 好题. 一开始一直在想怎么蛇皮建图,但是发现一直蛇不出来... 正解是用类似于 dijkstra 的算法对所有点进行松弛. 对于每个元素记录两个值: \(cost\) 代表 ...
- Codeforces663E. Binary Table
$n \leq 20,m \leq 100000$的01矩阵,可整行整列01翻转,问最少剩几个1. 一个暴力的做法是枚举$2^n$种行翻转然后$m$列扫一遍.但其实在行翻转情况确定的情况下我们只关心两 ...
- 【kindeditor】kindeditor的使用
官网:http://kindeditor.net/demo.php 效果: