0

我在 scala 中编写了 akka 应用程序,与应用程序相关的属性也application.conf与 akka 配置一起保存。我发现保留属性是合乎逻辑的地方。

如果这不是好的做法,我想知道它背后的原因,
例如我的财产之一是akka.remote.receivers = [akka.ssl.tcp://remote-system@localhost:2222/user/receiver1]

我如何加载属性?

  • 我把它reference.conf存在的默认属性main/resources
  • application.conf加载后备default.conf
4

1 回答 1

1

我认为最好有一个default.conf配置作为后备以及application.conf特定于部署环境/机器的配置。

reference.conf应该拥有所有库(akka 或任何其他库)的默认值。然后你default.conf应该有应用程序的默认值(包括业务用例所需的默认值,如果有的话)。您application.conf应该只覆盖default.conf和中需要的属性reference.conf

另外我相信你default.conf不应该覆盖任何reference.conf属性。任何覆盖都应该application.conf只在里面完成。这有助于确保您只有 1 个覆盖位置,并且您不必经过多个位置来查看哪个 conf 覆盖了什么。

最后也是最重要的:

保持应用程序/服务/团队之间的一致性

如果您有多个应用程序,请确保您遵循所有应用程序的确定流程。如果您选择使用错误的配置方式并没有太大关系,但如果您的应用程序/服务不一致,那么这将是一个痛苦。

于 2016-08-17T13:20:37.103 回答