首页 文章

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

提问于
浏览
1

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

sudo apt-get install

然后他们就可以开始了

{service_name} start 或只是 {service_name}

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

What is the industry standard? Install/start a repository-based binary or upload/start a rebar-generated release?

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

1 回答

  • 2

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

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

    检查,这些文件在哪里,只需 cat . 您应该看到,他们只是启动Erlang发布 .

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

相关问题