node 集群与稳定
Posted cangqinglang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node 集群与稳定相关的知识,希望对你有一定的参考价值。
node集群搭建好之后,还需要考虑一些细节问题。
- 性能问题
- 多个工作进程的存活状态管理
- 工作进程的平滑重启
- 配置或者静态数据的动态重新载入
- 其它细节
1 进程事件
Node子进程对象除了send()方法和messge事件外,还有如下事件:
- error: 当子进程无法被复制创建、无法被杀死、无法发送消息时会触发改事件。
- exit:子进程退出时触发改事件,子进程如果是正常退出,这个事件的第一个参数为退出码,否则为null。如果进程是通过kill方法被杀死的,会得到第二个参数,它表示杀死进程时
的信号。 - close:在子进程的标准输入输出流中止时触发该事件,参数与exit相同。
- disconnect:在父进程或子进程中调用disconnect()方法时触发该事件,在调用该方法时将关闭监听IPC通道。
上述这些事件是在父进程能监听到的与子进程相关的事件。除了send()外,还能通过kill()方法给子进程发送消息。kill()方法并不能真正的将通过IPC相连的子进程杀死,它只是给子进程发送
了一个系统信号。默认情况下,父进程将通过kill()方法给子进程发送一个SIGTERM信号。它与进程默认的kill()方法类似。
// 子进程 child.kill([signal]); // 当前进程 process.kill(pid, [signal]);
2 自动重启
有了父子进程之间的相关事件后,就可以在这些关系之间创建出需要的机机制了。监听子进程的exit事件来获知其退出的信息,并在主进程中加入一些子进程管理的机制,比如重新启用一个
新的工作进程来继续服务。
以上是关于node 集群与稳定的主要内容,如果未能解决你的问题,请参考以下文章
基于StatefulSet有状态部署与DaemonSet部署prometheus node-exporter