--- tags: aliases: - 2.3 内部控制平面通信接口 (Internal Control Plane Interface - IPC) date created: 星期四, 十一月 20日 2025, 11:47:20 晚上 date modified: 星期四, 十一月 20日 2025, 11:48:22 晚上 --- # 2.3 内部控制平面通信接口 (Internal Control Plane Interface - IPC) - **覆盖范围**:定义系统内部各功能模块(`IModule`)与核心管理组件(调度器、配置管理器)之间的**控制流交互机制**。该接口基于**进程内事件总线(In-Process EventBus)**架构,实现模块间的解耦、生命周期编排、资源仲裁及故障传递。**核心约束**:控制平面严禁传输任何业务数据块(如 I/Q 数据或点迹数组),仅允许传输元数据、状态码和控制指令。 - **2.3.1 事件总线架构与路由机制 (Event Bus Architecture & Routing Mechanism)** - **核心指向**:定义系统控制流的中枢神经。采用**发布 - 订阅 (Pub/Sub)** 模式,实现 `IEventBus` 接口。支持**同步分发**(`publishSync`,用于高优先级指令的即时回调)与**异步分发**(`publishAsync`,用于状态上报的非阻塞入队)的混合路由策略,确保控制指令在微秒级内准确送达。 - **2.3.2 全链路追踪上下文传递 (Trace Context Propagation)** - **核心指向**:定义控制指令的审计与追踪规范。强制要求所有控制事件(Event)必须携带全局唯一的 `TraceID`。涵盖在跨线程(如从 `API网关` 线程到 `SignalProcessor` 工作线程)传递事件时,利用 `TraceContextGuard` 或类似的 **RAII 机制**自动捕获、保存和恢复线程本地存储(TLS)中的追踪上下文,实现“无感”的链路追踪。 - **2.3.3 生命周期编排与状态同步协议 (Lifecycle Orchestration & State Synchronization)** - **核心指向**:定义 `TaskScheduler` 与业务模块间的握手协议。涵盖标准化的生命周期指令事件(`StartModuleEvent`, `StopModuleEvent`, `PauseModuleEvent`)以及模块的状态变更回执(`ModuleRunningEvent`, `ModuleStoppedEvent`)。重点关注在系统启动/关闭时的**拓扑依赖顺序**控制逻辑,确保无“悬空”状态。 - **2.3.4 故障传播与恢复信令 (Fault Propagation & Recovery Signaling)** - **核心指向**:定义异常情况下的通信契约。涵盖**致命错误上报**(`ModuleFailedEvent`,携带标准化 `ErrorCode` 和堆栈快照)的格式,以及调度器下发的**恢复指令流**(如 `PauseDataFlow` -> `RestartModule` -> `ResumeDataFlow`)的时序规范。集成**熔断器(Circuit Breaker)**状态广播,防止故障扩散。 - **2.3.5 资源仲裁与抢占式优先级控制 (Resource Arbitration & Preemptive Priority Control)** - **核心指向**:针对 CPU/GPU 异构计算资源的动态协调接口。涵盖由 `ResourceCoordinator` 发出的强制性指令(如 `SetComputePriorityEvent(LOW/HIGH)`),以及业务模块在收到指令后切换 **CUDA 流优先级** 或执行 **任务分片(Task Slicing)** 避让的响应时限要求(如 < 10ms)。 - **2.3.6 两阶段配置热更新协议 (Two-Phase Configuration Hot-Reload Protocol)** - **核心指向**:定义动态配置变更时的协商机制。涵盖 `ConfigManager` 发起的 **“验证询问”**(`ValidateConfigChangeEvent`,模块需在超时前反馈可行性)和 **“变更通知”**(`ConfigChangedEvent`,模块执行原子更新),确保在并发环境下配置更新的事务一致性。 - **2.3.7 性能指标遥测通道 (Performance Telemetry Channel)** - **核心指向**:定义业务模块向 `MonitoringModule` 上报健康数据的单向通道。涵盖 `MetricsUpdateEvent` 的数据结构定义(键值对映射),以及采用 **线程本地缓存(Thread-Local Storage)** 结合 **MPSC(多生产单消费)队列** 的高吞吐、无锁上报策略,彻底消除监控逻辑对业务主线程的锁竞争干扰。