运行守护进程的Erlang / OTP应用程序的行业标准?

时间:2014-12-13 20:59:34

标签: erlang couchdb daemon otp yaws

一些现代基础设施组件,如Yaws和CouchDB,可以安装在Ubuntu上

sudo apt-get install

然后可以用

开始

{service_name} start或只是{service_name}

我想知道这种方法与Erlang / OTP方式之间是否存在任何差异,即将OTP release上传到生产服务器,然后使用钢筋生成的脚本启动它。

什么是行业标准?安装/启动基于存储库的二进制文件或上传/启动钢筋生成的版本?

此外,基于存储库的二进制文件是否具有所有OTP功能,例如OTP应用程序结构,监督以及通过控制台连接到实时应用程序的选项?

1 个答案:

答案 0 :(得分:2)

每次,你正在开始erlang,你正在开始发布。即使如果您只在终端中输入erl,它也会运行一个版本(您可以在.boot中找到.rel.scripterlang_rootdir/releases/name_of_release个文件。

我认为这回答了你的最后一个问题:从存储库安装的软件包仍然具有OTP结构,监督和所有好处。只有几个bash脚本,使得启动和停止它们对于曾经service_name start的人更友好。您还应该能够找到类似于钢筋生成的脚本。

检查,这些文件在哪里,只需cat。你应该看到,他们只是开始发布Erlang。

对于包管理器来说,唯一不能做的就是热代码升级。大多数包管理器只是停止正在运行的应用程序,安装新版本并重新启动它。在Erlang中,您可以升级运行版本,但这是非常高级的东西。除此之外 - 使用OS软件包没有任何缺点。