server: #端口,需要更改 port: 8863 spring: # 应用名称 application: name: iot-transfer kafka: enable: true #kafka-servers,需要更改 bootstrap-servers: 113.108.52.72:4439,113.108.52.72:4440 #ssl认证,根据情况配置,store-location相关的认证文件对应添加,需要更改 ssl: protocol: SSL key-password: cmsk-ioc-1234 key-store-type: JKS key-store-location: file:D:\temp\ioc-ssl\client.keystore.jks #file:/usr/persagy/iot-transfer/config/client.keystore.jks #windows参考 file:D:\temp\ioc-ssl\client.keystore.jks key-store-password: cmsk-ioc-1234 trust-store-type: JKS trust-store-location: file:D:\temp\ioc-ssl\client.truststore.jks #file:/usr/persagy/iot-transfer/config/client.truststore.jks #windows参考 file:D:\temp\ioc-ssl\client.truststore.jks trust-store-password: cmsk-ioc-1234 producer: # 发生错误后,消息重发的次数。 retries: 2 #当有多个消息需要被发送到同一个分区时,生产者会把它们放在同一个批次里。该参数指定了一个批次可以使用的内存大小,按照字节数计算。 batch-size: 65536 # 设置生产者内存缓冲区的大小。 buffer-memory: 33554432 # 键的序列化方式 key-serializer: org.apache.kafka.common.serialization.StringSerializer # 值的序列化方式 value-serializer: org.apache.kafka.common.serialization.StringSerializer # acks=0 : 生产者在成功写入消息之前不会等待任何来自服务器的响应。 # acks=1 : 只要集群的首领节点收到消息,生产者就会收到一个来自服务器成功响应。 # acks=all :只有当所有参与复制的节点全部收到消息时,生产者才会收到一个来自服务器的成功响应。 acks: 1 properties: max.request.size: 50000000 # 生产着启用SSL,需要启用的环境放开,不需要启用的环境注释掉下面一行 ,需要更改 security: protocol: SSL consumer: topics: # 自动提交的时间间隔 在spring boot 2.X 版本中这里采用的是值的类型为Duration 需要符合特定的格式,如1S,1M,2H,5D auto-commit-interval: 1S # 该属性指定了消费者在读取一个没有偏移量的分区或者偏移量无效的情况下该作何处理: # latest(默认值)在偏移量无效的情况下,消费者将从最新的记录开始读取数据(在消费者启动之后生成的记录) # earliest :在偏移量无效的情况下,消费者将从起始位置读取分区的记录 auto-offset-reset: earliest # 是否自动提交偏移量,默认值是true,为了避免出现重复数据和数据丢失,可以把它设置为false,然后手动提交偏移量 enable-auto-commit: false fetch-min-size: 10 fetch-max-wait: 500 # 键的反序列化方式 key-deserializer: org.apache.kafka.common.serialization.StringDeserializer # 值的反序列化方式 value-deserializer: org.apache.kafka.common.serialization.StringDeserializer properties: max.partition.fetch.bytes: 50000000 # 消费者启用SSL,需要启用的环境放开,不需要启用的环境注释掉下面一行 ,需要更改 security: protocol: SSL listener: # 在侦听器容器中运行的线程数。 concurrency: 5 #listner负责ack,每调用一次,就立即commit ack-mode: manual_immediate missing-topics-fatal: false properties: ssl.endpoint.identification.algorithm: iot: # 程序一式两份,一份部署在云端,一份部署在边缘端,一式两份之间通过kafka通讯,实现内外网之间的iot数据通讯 type: # 程序部署位置类型,部署在云端一侧的,需要设置cloud为true,edge为false,需要更改 cloud: false # 程序部署位置类型,部署在边缘端一侧的,需要设置cloud为false,edge为true,需要更改 edge: false server: #同原来iot-collect中的util.xml配置,用于部署在需要更改edge边缘端给iot-project通讯使用,需要更改 collect: tcp_enable: true tcp_bind_ip: 0.0.0.0 #需要更改 tcp_bind_port: 8851 udp_enable: false udp_bind_ip: 0.0.0.0 udp_bind_port: 8851 max_size: 1000 sleepcount: 1000 separate_begin: ( separate_end: ) compress: false control: tcp_enable: true tcp_bind_ip: 0.0.0.0 #需要更改 tcp_bind_port: 8855 udp_enable: false udp_bind_ip: 0.0.0.0 udp_bind_port: 8855 max_size: 1000 sleepcount: 1000 separate_begin: ( separate_end: ) compress: false clients: #同原来iot-project中的util.xml配置,配置iot转发程序要连接的的iot-collect/iot-control地址,需要更改 - protocol: TCP #iot-collect IP,需要更改 target_ip: 127.0.0.1 #iot-collect port,需要更改 target_port: 8851 max_size: 1000 sleepcount: 1000 separate_begin: ( separate_end: ) compress: false transparent: false usecurrentdate: false server_is_iot_collect: true server_is_iot_control: false - protocol: TCP #iot-control IP,需要更改 target_ip: 127.0.0.1 #iot-control port,需要更改 target_port: 8855 max_size: 1000 sleepcount: 1000 separate_begin: ( separate_end: ) compress: false transparent: false usecurrentdate: false server_is_iot_collect: false server_is_iot_control: true projects: #配置要转发的项目,只有列表中配置的项目的数据才会转发,否则丢弃,默认配置了招商的四个项目,需要更改 - id: 4403050019 PjId: Pj4403050019 name: 深圳太子广场汇港二期 groupCode: ZS - id: 3201130004 PjId: Pj3201130004 name: 南京招商燕子矶花园城 groupCode: ZS - id: 5101080004 PjId: Pj5101080004 name: 成都招商花园城 groupCode: ZS - id: 3101150007 PjId: Pj3101150007 name: 上海森兰花园城 groupCode: ZS