Skip to Content

2026年07月27日

内容截止日: 2026年08月02日

本周工作计划与执行完成进度

中心服务平台 - 功能完善

  • 进度: 🔘 未开始 -> 🟡 进行中 -> ⚠️ 部分完成 -> ✅ 已完成 -> 📌 已自测
    • 以往已完成的工作不再重复,详情请查看上周及上月报告
    • 〔工作量〕es-center-server-services 75 次(设计 33 · 代码 42)· 代码 +12.5k/-10.5k | es-center-server-web-app 34 次(设计 11 · 代码 23)· 代码 +5.7k/-0.6k | es-center-server-install-app 1 次 · 代码 +0.1k
    • 〔方法论〕合同先行 | 性能优化(缓存 / 并发 / 弱网)| 执行器并发迁移 | 全链路回归审查
    • 7-27: 详情凭据与运行配置
      • ✅ 回归二轮复核更新未实现清单,详情返回 roomPin 完成 〔es-center-server-services〕
        • 设计 复核已实现/待办分类,更新任务分析与后续会话入口。
        • 测试 listCache(设备列表缓存)选择最新有效绑定、管理员固定 default 租户登录的合同锁定。
        • 实施 群组和群组设备详情返回 Janus(对讲底层音视频网关)room PIN(进房密码),详情 SQL 独立投影;列表继续使用自己的字段边界。
        • 实施 三项杂项修复:详情独立投影、IoT(设备物联网通道)错误诊断仅记类型/topic(消息主题)/异常类型而不泄漏原始内容、dev 运行目录与 SFTP(安全文件传输)路径统一。
        • 测试 补充上述三项修复的对应测试。
      • ✅ 安装启动延迟与 Janus HTTP 端口配置调整 〔es-center-server-install-app〕
        • 实施 关键服务等待提高到 16 秒,Python 安装/更新/升级的 PostgreSQL 等待改 48 秒,常规启动器先等 180 秒以避让 BMC;Janus HTTP/管理端口和目标排障脚本补齐。
    • 7-28 ~ 7-31: 前端后端合同对接
      • ✅ 群组管理接入精确 HTTP 合同,测试基建与在线状态同步 〔es-center-server-web-app〕
        • 设计 对接计划先拆票,随后按合同域重组;项目规范、spec、ADR 与 AI 原生开发流程模板同步,模板之后精简。
        • 测试 建立最小单元测试基建,覆盖 SFU(音视频转发服务器)/PTT(按住讲话)在线状态与精确 HTTP 路径/参数/响应。
        • 实施 群组分页、权限、批删、设备实时分页与反向绑定对接;新增群组接通真实闭环,管理更新保留只读房间配置。
        • 实施 管理页按权限展示 Room PIN、隐藏 roomSecret,进房前强制 PIN 校验;失败显示错误状态。
    • 8-01 ~ 8-02: 房间协商、成员与故障诊断
      • ✅ Janus/AudioBridge(网关的音频房间组件)进房与成员链路完成对接,ICE(音视频连接协商)加载故障修复 〔es-center-server-web-app〕
        • 实施 Janus 控制切至 PTT topic,进房补偿确保房间就绪;成员快照 single-flight(并发去重)与轮询接入,主动离房有界清理,失效开发 mock(模拟接口)删除。
        • 实施 修正 AudioBridge browser offer(浏览器连接协商)时序,Janus session 增加保活;成员刷新保持稳定,恢复流程增加 PTT 失效静音保护。
        • 设计 补充检查点缺陷修复计划,涵盖 offer、会话保活、成员稳定/全量恢复、PTT 静音与紧凑回放控件;AudioBridge 诊断和恢复方案分别记录。
        • 排障 修复 MQTT(发布订阅消息协议)list-ice-server 配置请求、回复校验与 pending(尚未完成请求)生命周期,诊断继续推进。
    • 7-27 ~ 7-30: 房间补偿与缓存边界
      • ✅ 房间补偿简化,状态与配置查询改为批量处理 〔es-center-server-services〕
        • 设计 先讨论动作去重、分页、多实例重叠,明确单项直发、批量双 destination(消息投递目标)和 all/3m/1m 范围。
        • 评审 经 grilling(逐条追问的方案评审)讨论批量补偿简化,结论记录于 ADR-0012(架构决策记录)。
        • 重构 三项边界调整:缓存 Bean(框架托管的对象)与 Janus 领域组件分离,room 动作去重,活动房间路由缓存;随后移除过时补偿中间层和启动多轮/专用时刻路径,统一五分钟调度。
        • 实施 设备状态缓存批量查询,修复设备信息上报跨租户投影;PTT 默认标识规范为 0/1,查询与响应构造交给 GetPttFunction,retrieve 消费者只分发。
        • 重构 TalkGroup 活动房间缓存区分 tenant 与 AllTenant,简化参数和查询;设备状态边界、缓存提示词与执行日志同步。
    • 7-30 ~ 8-01: Janus 转发与回归验证
      • ✅ Janus 恢复原文转发,节点缓存与流式路由提取完成 〔es-center-server-services〕
        • 实施 弱网并发链路优化,兼容硬件 transaction(关联请求与回复的标识);Janus 裸转发(不改写原消息)恢复,删除旧 tracker、动作门禁与冲突锁,MQTT/JMS(服务间消息通知)并发处理迁移。
        • 实施 四项修复:设备上报租户隔离、列表 created_time DESC 增加 NULLS LAST(空值最后)、MQTT byte[] 正确解码、PlusMapper 重复 select 移除。
        • 实施 三项性能优化:Janus 管理密钥查询入缓存、WebRTC(浏览器实时音视频)节点解析增加一分钟外层缓存、普通请求流式提取 transaction 后原文转发;Admin 仍完整校验。
        • 审查 Janus 路由实现审查与提示词交叉评审分别记录,裁决双层缓存、并发丢失风险、原文转发边界与可选 L2(action 日志显示规范化:三处成功日志将 null action 显示为“-”,业务值不变)。
        • 测试 最终集成验证记录跨模块检查、Spotless(Java 代码格式检查)与 532 项全仓测试通过;可选 L2 未执行,剩余风险明确保留。
    • 7-27 ~ 7-31: Function 与虚拟线程执行器
      • ✅ 五层 Function 调用与框架执行器完成迁移 〔es-center-server-services〕
        • 设计 Function 执行器(统一运行时上下文入口)与虚拟线程(轻量线程)的职责先规划;ADR-0014 区分框架、JMS 脱离监听任务与 MQTT 通道,保留 at-most-once(消息至多投递一次)、无重试/DLQ(用于保存失败消息的死信队列)边界。
        • 实施 Function 运行时适配层先建立,gt-common / es-common / main / main-service / device-service 五层调用迁至静态 Executor,真正 provider(上下文提供者)保留。
        • 实施 两运行服务的框架设施使用 Boot applicationTaskExecutor(框架默认任务执行器);device-service 增加专用 MQTT 任务执行器与 JMS 业务执行器。
        • 实施 Dashboard KPI worker 捕获、建立、清理租户范围,避免异步丢失或串租户。
        • 测试 核对上下文嵌套与异常恢复、执行器装配和虚拟线程,覆盖 KPI 租户上下文恢复。
    • 7-27 ~ 8-01: 规范、审查与生成器修复
      • ✅ 回归审查与规范记录继续推进 〔es-center-server-services〕
        • 审查 三项审查工作分别完成:缓存规范最终审计、Janus 路由实现审查/最终集成验证、提示词交叉评审;缓存双模式并存,未为形式统一迁移。
        • 审查 基线对比路线与分段编排成文;S0.1 认证凭证配置和 S0.2 租户隔离横切审查完成,记录接受的敏感审计/凭据返回风险与两项规范修复。
        • 设计 PTT 通道合同、差距决策、未缓存 DB 审计和集群对讲差距分析成文,先修 Janus adminSecret,其余查询先采集指标;回归问题拆为独立修复会话。
        • 重构 三处规范调整:数据访问与跨租户边界完善、AllTenant 命名统一、HTTP 异常分层与异步消息边界统一;数据权限常量与 Janus topic 同步归一。
      • ✅ 生成器重跑诊断完成,覆盖丢失的业务合同修复 〔es-center-server-services〕
        • 设计 定义覆盖丢失与引用断裂的诊断边界,安排只读诊断、复核、讨论和修复步骤。
        • 排障 恢复 JSONB(PostgreSQL 结构化 JSON 存储类型)字段、TalkGroup Plus DTO/投影、Janus Plus Mapper 与 DeviceShare v1 视图,清理重复片段,补防回归规范与验证材料。
      • ✅ 容量与本地运行配置完成调整 〔es-center-server-services〕
        • 审查 资源容量报告复审纠正连接数、恢复耗时和 N+1(逐条追加查询)误报,发现地图代理、Pgpool、MQTT QoS 与双向音频遗漏。
        • 设计 按复审结论补齐上述容量项,给出业务查表与容量分档。
        • 实施 数据源池按低配环境调优,补容量指导;本地启动与 Gradle(构建工具)配置精简,开发分支管理日期更新。
        • 实施 EMQX(消息服务器)API secret 与 COTURN TURN(音视频中继)凭证更新,开发配置同步;AI 流程与验证指引精简。

其它工作

  • 目标: 记录日常杂项工作、协作沟通等事务
  • 进度: 🔘 未开始 -> 🟡 进行中 -> ⚠️ 部分完成 -> ✅ 已完成 -> 📌 已自测
    • 📌 以往已自测工作不再重复,详情请查看上周及上月报告
    • 27 日
      • ✅ 协作 git → svn 源代码同步
      • ✅ 排障 KH3980: 处理线上问题——客户删除租户后,在新租户中添加采集服务器失败;已通过数据库在已删除租户中清理采集服务器及采集设备数据。后续改进: 删除租户后,同步由 JMS 队列执行对应租户的数据清理任务
Last updated on