Comments (4)
目前需要做优雅重启,需要worker需要告诉master,请马上fork一个新进程替代我。
graceful({
server: [ server, server.hsf ],
worker: worker,
error: function (err, throwErrorCount) {
// Tell master I'm going to exit, please fork a new worker replace me.
worker.disconnect();
if (err.message) {
err.message += ' (uncaughtException throw ' + throwErrorCount + ' times on pid:' + process.pid + ')';
}
logger.error(err);
}
});
from pm.
worker什么情况下需要有这样的需求?master抓了SIGUSR1信号就是这么实现的
from pm.
http://nodejs.org/docs/latest/api/domain.html#domain_warning_don_t_ignore_errors
worker如果出现了未捕获异常,那么必须在一定时间后将进程退出。
但是不能马上退出,因为当前还有正在连接的请求。
所以worker需要告诉master,请马上fork一个新进程替代我。然后新的请求就转移给新的进程。
当前worker就不再接受新请求了,等一段时间后,可以认为所有已连接的请求都处理完毕了。
@fengmk2 (https://twitter.com/fengmk2)
@python发烧友 (http://weibo.com/imk2/profile)
http://fengmk2.github.com (http://fengmk2.github.com/)
记得当时年纪小/
你爱谈天,我爱笑/
有一回并肩坐在桃树下/
风在林梢鸟儿在叫/
我们不知怎样睡着了/
梦里花落知多少
On Tuesday, April 16, 2013 at 11:53 AM, aleafs wrote:
worker什么情况下需要有这样的需求?master抓了SIGUSR1信号就是这么实现的
—
Reply to this email directly or view it on GitHub (#32 (comment)).
from pm.
哦,对的
from pm.
Related Issues (20)
- exception throw out for heartbeat when got sigterm
- need to fixed test case fails.
- worker is killed as soon as forked
- 能否支持worker在不同的机器上跑? HOT 6
- master crash with "uv__write: Assertion `fd_to_send >= 0' failed" HOT 4
- 执行Worker.reload()时,若某个worker进程还有没处理完的请求,能否等其处理完再退出? HOT 5
- work直接监听模式 HOT 3
- 请问这个跟Node官方的Cluster之间有什么区别? HOT 4
- pm 怎么搭配 express来使用 HOT 1
- 我在 worker.js 里 console.log('ooxx'),在浏览器刷新页面会出现2~5条的ooxx,什么情况? HOT 13
- aaa HOT 2
- 你好,请教你几个问题哈 HOT 2
- 关于集成pm与kraken HOT 4
- 当我control+c 终止master进程的时候,报错 HOT 1
- 怎样杀死所有子进程? HOT 1
- PM监听端口有没有个数限制? HOT 1
- 你好,请教关于监听地址的问题 HOT 1
- 0 down time 更新问题
- windows环境下tcp_wrap报错,Linux环境未测试
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pm.