Akka学习笔记(七):配置

  • 时间:
  • 浏览:0
  • 来源:uu快3苹果版_uu快3单双_套路

Akka的所有配置信息装进 ActorSystem的实例中, 将会换个说法, 从外界看来, ActorSystem 是配置信息的唯一消费者. 在构造有四个 actor系统时,让人传进来有四个 Config object,将会不传,就大约传进来 ConfigFactory.load() (使用正确的classloader). 这原因分析 着将会读取classpath根目录下的所有application.conf, application.json and application.properties哪些文件—请参阅然后推荐的文档以了解细节. 但会 actor系统会合并classpath根目录下的 reference.conf 来组成其组织组织结构使用的缺省配置

将会有什么的什么的问题 ,你也才能在用它们构造有四个 actor系统然后或然后很方便地了解配置对象的内容:

才能将配置include进来。比如有有四个 通用的环境配置application.conf,亲戚朋友 只只能覆盖掉其中的个别变量,以满足特殊环境的需求

注意

将会你编写的是有四个 Akka应用,把配置装进classpath根目录下的 application.conf 中. 将会你编写的是有四个 基于Akka的库,把配置装进jar包根目录下的 reference.conf 中.

通过-Dconfig.resource=/dev.conf加载dev.conf配置文件,你要是配置文件会加载application.conf

每第三根设置然后的注释给出了原有设置的详情信息 (文件和行号) 以及(e.g. 在参考配置中)将会再次突然出现的注释,与参考配置合并并被actor系统解析的设置才能原先显示:

将会系统属性或配置属性 akka.log-config-on-start 设置为 on, 没人当actor系统启动时整个配置的日志级别为INFO. 这在你不选折 使用哪个配置后要有用。

Akka使用Typesafe Config Library,纯java实现的配置库。然后博客有介绍过here

更高级的包含和替换机制在 HOCON 规范包含解释.here

使用Akka才能不让任何配置,Akka提供了明智的默认配置。为了适应怪怪的的运行环境,修改默认行为,你将会只能修改:

有四个 application.conf将会看起来是原先:

系统属性中覆盖的配置具有最高优先级,见 HOCON 规范 (靠近末尾的位置). 要提醒的是应用配置—缺省为 application—才能使用 config.resource 中的属性来覆盖 (更多细节参阅 配置文档).

dev.conf:

警告

Akka会读取所有jar包的reference.conf配置,要是 将会你把多个jar包合并成有四个 jar,没人你也只能合并哪些reference.conf,但会 默认配置会丢失,原因分析 Akka只能正常工作

appConfig.withFallback(ConfigFactory.defaultReference(classLoader))

其中的哲专学 代码不包含缺省值,要是依赖于随库提供的 reference.conf 中的配置.