加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 澄清需要关于Twelve-Factor App宣言和守护进程的第八个

发布时间:2020-12-13 19:50:43 所属栏目:Linux 来源:网络整理
导读:我参考了Twelve-Factor应用程序“宣言”,可以在这里找到: http://12factor.net 在eighth factor,作者写道: Twelve-factor app processes should never daemonize or write PID files. Instead,rely on the operating system’s process manager (such as U
我参考了Twelve-Factor应用程序“宣言”,可以在这里找到: http://12factor.net

在eighth factor,作者写道:

Twelve-factor app processes should never daemonize or write PID files.
Instead,rely on the operating system’s process manager (such as
Upstart,a distributed process manager on a cloud platform,or a tool
like Foreman in development) to manage output streams,respond to
crashed processes,and handle user-initiated restarts and shutdowns.

我不确定“流程永远不应该守护”的含义.

有人可以解释守护进程的优缺点 – 特别是在java进程的上下文中吗?此外,进程管理器不能管理守护进程吗?

解决方法

如果一个流程去了代码,那就意味着它有效地试图自己管理它的生命周期.这对于某些应用程序类型是有用的,但对于分布式Web应用程序,这是12因素宣言所涉及的那种应用程序,它通常意味着麻烦.如果某个应用程序试图管理自己,它可能不会被外部流程管理器轻松管理,或者在最好的情况下,它可能意味着需要自定义插件或这些管理器的扩展,这使部署变得复杂.

您希望对应用程序执行的操作以及守护程序可以阻止的示例将是自动扩展.使用诸如Mesos之类的工具,您基本上想告诉系统:“这是我的50台机器,现在将我的应用程序放在这些机器上”.您不希望手动管理其中的内容,而是让集群管理器自动处理它.它可以根据条件自动设置更多或更少的实例,例如您的系统正在接收多少流量,并且可以在一台计算机上放置多个实例.如果一个应用程序试图管理自己,它将干扰并使这种外部管理不可能或非常复杂.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读