Skip to Content
工作文档周报2024年度总结

2024年度总结

项目

中心服务 - 设备管理模块

  • 完成服务器设备管理:P2P服务器、转发服务器、集群对讲服务器、文件存储服务器、数证管理服务器等型号及实例管理
  • 完成客户端设备管理:执法仪、指纹机、采集盒、NFC卡等型号及实例管理
  • 完成设备关联管理:服务器与执法仪绑定、采集盒与指纹机绑定等
  • 时间线:1月-3月完成基础框架搭建及界面美化

中心服务 - 直播模块

  • 实现P2P直播(基于穿透科技方案及自有P2P隧道)
  • 实现WebRTC直播(P2P模式、SFU模式基于Janus)
  • 实现H264/H265视频编解码(硬解优先、软解兜底)
  • 实现多屏直播、对讲功能、地图集成
  • 时间线:3月开始P2P直播开发,4-5月WebRTC开发,8月H265支持,10月新UI集成

中心服务 - 历史回放模块

  • 实现数证管理服务器文件索引分页查询
  • 实现P2P文件传输(基于WebRTC Data Channel)
  • 支持图片、音频、视频播放
  • 时间线:4月历史回放开发,7月P2P传输Rust服务端开发

中心服务 - APP API接口

  • 完成用户中心接口:手机号/邮箱注册、登录、找回密码
  • 完成设备绑定、分享、管理接口
  • 完成短信验证码服务集成(阿里云)
  • 时间线:11月-12月集中开发

中心服务 - 新旧UI整合

  • 旧UI基于React+Ant Design完成全站美化
  • 新UI基于Remix+Shadcn/UI开发
  • 微前端框架整合
  • 时间线:2-3月旧UI美化,8-10月新UI开发,10月微前端整合

巴西定制版设备Web

  • 完成FTP配置、4G配置、WiFi配置界面
  • 完成设备激活、领用归还流程
  • 时间线:4月开始,持续全年维护

P2P隧道Web插件

  • 基于ASP.NET Core AOT开发
  • 支持隧道建立、心跳保活、WebSocket事件推送
  • 制作为安装程序,支持后台服务运行
  • 时间线:4月开发完成

WebRTC服务端

  • 部署Janus Gateway服务器(支持MQTT信令)
  • 部署STUN/TURN服务
  • 开发es-center-server-webrtc-service(Rust实现,部署在数证管理服务器)
  • 时间线:4-7月

技能成长

  • WebRTC:深入掌握P2P/SFU模式、H264/H265编解码、Data Channel文件传输、信令交互设计
  • MQTT:掌握EMQX服务器部署、MQTT 5.0共享订阅、信令交互文档编写
  • Rust:掌握Tokio异步编程、webrtc-rs库使用、并发性能优化
  • 前端框架:Next.js → Remix迁移、Remix SPA模式、Shadcn/UI组件库
  • 微前端:micro-app框架集成新旧UI
  • Spring Boot:升级至3.4.x、虚拟线程、依赖包管理
  • Docker:Docker Compose编排、镜像制作优化、Drone CI/CD集成

收获与避坑

收获

  • WebRTC P2P成功率优化:通过STUN/TURN服务、ICE配置优化提升连接成功率
  • 前端性能优化:SWR缓存、LocalStorage缓存、静态词条文件生成
  • 并发性能优化:Rust DashMap替代RwLock<HashMap>、异步任务资源回收
  • 部署效率提升:Drone CI/CD自动部署、批量编译部署脚本

避坑

  • WebRTC Candidate发送时机:需等待设置远程SDP后再发送,否则影响P2P成功率
  • Remix SPA模式:打包体积从200MB+优化至50MB
  • MQTT消息过滤:需通过region_id区分不同组件的消息,避免消息混乱
  • 软解H265兼容性:需处理Firefox Blob类型与Chrome ArrayBuffer类型差异
Last updated on