CoreC 上行数据流

CoreC 上行数据流 A data-flow diagram generated by Archify. 01 / 设备层 02 / 采集层 03 / 内核层 04 / 路由层 05 / 云端层 西门子 S7 · S7 :102 · 01 / 设备层 · PLC 西门子 S7 S7 :102 PLC PLC / Modbus · Modbus :502 · 01 / 设备层 · PLC PLC / Modbus Modbus :502 PLC OPC UA · opc.tcp :4840 · 01 / 设备层 · SCADA OPC UA opc.tcp :4840 SCADA 调度器 · goroutine/任务 · 02 / 采集层 · Ticker 调度器 goroutine/任务 Ticker 处理循环 · 单 goroutine · 03 / 内核层 · 富化 处理循环 单 goroutine 富化 数据总线 · chan cap=8192 · 03 / 内核层 · 丢最旧 数据总线 chan cap=8192 丢最旧 最新值缓存 · RWMutex map · 04 / 路由层 · 最新值 最新值缓存 RWMutex map 最新值 规则引擎 · 优先级匹配 · 04 / 路由层 · 转发/丢弃/告警 规则引擎 优先级匹配 转发/丢弃/告警 WebSocket · /tags/stream · 04 / 路由层 · 实时 WebSocket /tags/stream 实时 MQTT · 异步发布 · 05 / 云端层 · QoS 1 MQTT 异步发布 QoS 1 HTTP 推送 · 连接池 · 05 / 云端层 · 批量 POST HTTP 推送 连接池 批量 POST 读取 轮询 订阅 推入 channel 更新 匹配 广播 转发 镜像 Legend primary data async batch data store data flow

上行管道

  • • 驱动按采集周期分组读取标签
  • • TagValue 富化为 DataPoint,携带路由元数据
  • • 规则引擎按优先级路由:转发、丢弃、告警、镜像

内核处理

  • • DataBus channel(cap=8192)丢最旧背压策略
  • • 单处理循环:缓存→广播→规则→发布
  • • 非阻塞扇出至 WebSocket 订阅者

云端输出

  • • MQTT 异步发布 + 主题模板渲染
  • • HTTP 推送 + 连接池 + 批量支持
  • • 下行控制经 MQTT 指令主题(见架构图)