zoukankan      html  css  js  c++  java
  • NATS_10:NATS服务配置文件详解

      尽管NATS可以无配置的运行,但也可以使用配置文件配置NATS服务的启动,在实际应用当中,一般都是通过使用配置文件来启动服务的。

    1. 配置项包括

    • 客户端监听器端口 Client listening port
    • HTTP监听器端口 HTTP monitoring port
    • 客户端认证 Client auth
    • 集群定义 Cluster definitions
    • 集群路由 Cluster routes
    • 日志 Logging
    • 最大客户端连接数 Max client connections
    • 最大有效负载 Max payload

    2. 配置文件的语法

      NATS服务器配置文件的格式比较灵活,结合了传统的JSON格式和新的YAML格式的风格。

      NATS配置文件格式支持以下语法:

    • 数组形式: […]
    • 内嵌Map形式: {…}
    • 配置注释标识: # and //
    • Key-value赋值使用:

      等号 (foo = 2) 
      冒号 (foo: 2) 
      空格 (foo 2)

    • Maps can be assigned with no key separator

    • Semicolons as value terminators in key/value assignments are optional

      注:YAML不是标记语言,而是一种语言中立的、对阅读友好的数据序列化标准。YAML语言发展了三个版本,1.0、1.1、1.2,

    3. NATS服务器配置文件示例

    下面是一个完整的NATS服务器配置文件样例:

    # 供客户端连接的监听端口
    port: 6222
    
    # 监听的网络地址
    #net: apcera.me
    
    # HTTP监控端口
    http_port: 8224
    
    # 客户端连接的认证信息,可以使用多个用户与变量
    authorization {
      PASS: liang637210
      users = [
        {user: test,    password: test}
        {user: liang,   password: $PASS}
      ]
      timeout:  1
    }
    
    # 集群定义
    cluster {
    
      host: '127.0.0.1'  # 主机地址
      port: 4248         # 路由内部连接端口
    
      # 路由连接的认证信息
      authorization {
        user: test
        password: test
        timeout: 1
      }
    
      # 通过下面的路由配置且可以提供正确的凭证,那么其他服务就可以通过路由连接到这个服务上
      routes = [
        nats-route://test:test@127.0.0.1:4244
        nats-route://test:test@127.0.0.1:4246
      ]
    }
    
    # 日志选项
    debug:   false
    trace:   true
    logtime: false
    log_file: "/Users/mfw/Desktop/nats-temp/gnatsd_c.log"
    
    # pid 进程文件
    pid_file: "/Users/mfw/Desktop/nats-temp/gnatsd_c.pid"
    
    # 一些系统属性
    
    # 客户端最大连接数
    max_connections: 100
    
    # 最大协议控制行
    max_control_line: 512
    
    # 最大的有效负载
    max_payload: 65536

      通过以上对配置文件的详细说明,那么我们以后再应用中就可以配置好相应的文件之后再启动服务,可以实现我们所有想要的功能。

  • 相关阅读:
    Android 从零搭建简单MVP Demo
    Ubuntu 16.04 安装wine QQ
    Android 根据字符串动态获取资源ID
    Android 个推 踩坑小结
    Android Studio 查看手机CPU信息
    J2EE 项目本地发布路径及修改
    Cucumber 安装
    [译] 第三十天:Play Framework
    [译] 第二十九天:Yeoman Chrom Generator
    [译] 第二十八天:Java开发者的OpenShift Eclipse 集成
  • 原文地址:https://www.cnblogs.com/liang1101/p/6674818.html
Copyright © 2011-2022 走看看