【发布时间】:2015-02-10 01:33:50
【问题描述】:
我正在开发一个 Erlang 项目,该项目将许多不同的 Erlang 应用程序捆绑到一个版本中。每个应用程序都有一个非常简单的结构 - 一个顶级应用程序文件,然后是一个管理单个 gen_server 的单个主管。它使用 rebar/reltool 来构建版本;作为一个发布新手,我对必须在 rebar.config 和 reltool.config 中进行的大量奇怪配置选项感到非常震惊。
然后我发现了 erlang.mk 和 relx,这似乎是构建版本的更理智/更简单的方式。然而,似乎 erlang.mk 只适用于单个顶级应用程序(即,一个与底层项目同名的应用程序)。这让我想知道,考虑到每个应用程序的简单性,我的原始结构真的是最优的吗?有一个单一的应用程序和一个顶级主管,然后在此之下的第二层主管,每个管理我的一个 gen_servers 可能不是更有意义吗?然后我可以使用 erlang.mk 并希望消除所有与钢筋相关的复杂性。
那么:对于一方面使用多个应用程序与使用单个应用程序和额外的中间主管层的优缺点有何建议?
【问题讨论】:
标签: erlang erlang-otp