squbs-7. 配置参考

作者: 吕亦行 | 来源:发表于2017-01-24 21:50 被阅读37次

    原文地址:Configuration Reference

    以下列出的是定义在 reference.conf中的squbs配置:

    squbs {
    
      #squbs创建的actor system的名称
      actorsystem-name = "squbs"
    
      # 优雅关闭的超时时间
      # 在继承org.squbs.lifecycle.GracefulStopHelper特性的情况下,一个actor优雅关闭的默认超时时间
      default-stop-timeout = 3s
    
      # 一个额外的配置目录来扩展application.conf。文件夹的地址相对于squbs进程的工作文件夹。
      external-config-dir = squbsconfig
    
      # 一个额外的配置文件名列表,在 external-confi-dir中任何列表中的文件将会在Actor System初始化设置
      #  加载的时候被加载。除此文件列表之外, "application.conf" 将会被隐式加载。
      external-config-files = []
    }
    
    default-listener {
    
      # 所有的squbs监听携带"squbs.listener"类型
      type = squbs.listener
    
      # 在 cube's route声明通过不同名称绑定监听时,为监听加入依赖。
      # 只需要逗号分隔的名称就可以了,例如
      # aliases = [ foo-listener, bar-listener ]
      aliases = []
    
      # 服务绑定特定的地址/接口。默认是0.0.0.0 为任何地址/接口
      bind-address = "0.0.0.0"
    
      # 是否为地址绑定使用全主机名称
      full-address = false
    
      # 服务绑定的特定端口,默认为8080
      bind-port = 8080
    
      # 监听是否使用HTTPS
      secure = false
    
      # HTTPS是否需要客户端授权。 secure关闭,这个配置不会读取。
      need-client-auth = false
    
      # 提供任何的个性化的SSLContext?设置"default"以为着系统默认。
      ssl-context = default
    }
    
    blocking-dispatcher {
      # Dispatcher是基于事件调度器的名称
      type = Dispatcher
      # 使用哪种类型的ExecutionService
      executor = "thread-pool-executor"
      thread-pool-executor {
        #  factor-based 限制的最小核心线程数
        core-pool-size-min = 2
        # 通过使用公式ceil(available processors * factor).,核心线程数factor用于确定核心线程数。
        #  结果的大小在pool-size-min和core-pool-size-max之内
        core-pool-size-factor = 3.0
        #控制的最大factor-based线程大小
        core-pool-size-max = 24
    
        # factor-based 限制最小的最大线程数
        # (如果使用有界线程队列)
        max-pool-size-min = 2
        # 最大线程数通过计算确定(如果使用有界线程队列): ceil(available processors * factor)
        max-pool-size-factor  = 3.0
        # actor-based 限制的最大线程数(如果使用有界线程队列)
        max-pool-size-max = 24
      }
    
      # Throughput 定义每个actor处理的最大消息量,在跳向下一个actor之前。
      # 设置为1尽可能公平。
      throughput = 2
    
    }
    

    阻塞调度器(Blocking Dispatcher)

    squbs的reference.conf 声明了 blocking-dispatcher用于阻塞 I/O调用。这是一个标准的Akka调度器配置。请查看dispatchers 获得更多细节。

    监听(Listeners)

    一个监听器绑定一个端口,这个端口的行为诸如安全,授权等。默认的监听由squbs的 reference.conf提供。可以通过提供application.conf或在扩展配置文件夹中的 application.conf覆盖。关于squbs如何读取这些配置文件,可以查看 Bootstrapping squbs

    监听在配置文件的根级别上声明。这个名称通常参照*-listener格式,但并不是必须的。 在监听条目内的type 字段定义了这个条目为监听。它必须设置为squbs.listener。关于如何配置新的监听器来监听不同的端口,请参见上面的default-listener例子 。

    除非服务路由将自己附加到监听器,监听器是不会启动的。换句话说,仅仅声明监听器不会导致监听器启动,除非监听器有真正的用途。

    Pipeline

    如果定义,一个默认的pipeline将被安装,对所有单个请求进行预处理,对所有返回进行后处理。服务可以指定一个不同的pipeline或不指定,这在Unicomplex & Cube Bootstrapping中有描述。应用或者基础设施可以实现他们自己的pipeline来预处理诸如打日志和跟踪。更多关于pipeline的细节描述请参见Streaming Pipeline.

    相关文章

      网友评论

        本文标题:squbs-7. 配置参考

        本文链接:https://www.haomeiwen.com/subject/evszbttx.html