QDAirPortBackend0122/doc/deploy/ADXP_WebSocket.md
2026-01-22 13:19:47 +08:00

2.9 KiB
Raw Permalink Blame History

ADXP WebSocket 实时消息传输系统

系统架构

本系统实现了基于WebSocket的实时消息传输机制用于替代原有的轮询方式提高数据传输的实时性和系统效率。

组件构成

  1. adxp-adapter服务

    • 作为ADXP SDK与QAUP系统的桥梁
    • 提供WebSocket服务端点
    • 持续监听数据中台消息并通过WebSocket广播
  2. QAUP系统

    • 作为WebSocket客户端连接adxp-adapter
    • 实时接收航班通知消息
    • 处理消息并触发后续业务逻辑

部署和启动

1. 启动adxp-adapter服务

cd /Users/tianjianyong/apps/Company/QAUP-Management/adxp-adapter
./start.sh

或者手动启动:

cd /Users/tianjianyong/apps/Company/QAUP-Management/adxp-adapter
mvn spring-boot:run

2. 启动QAUP系统

cd /Users/tianjianyong/apps/Company/QAUP-Management/qaup-admin
mvn spring-boot:run

WebSocket端点

  • 服务端点: ws://localhost:8086/ws/flight-notifications
  • 健康检查: http://localhost:8086/actuator/health

配置说明

adxp-adapter配置 (application.yml)

adxp:
  host: localhost        # 数据中台地址
  port: 7001            # 数据中台端口

server:
  port: 8086            # 适配器服务端口

QAUP系统配置 (application-dev.yml)

data:
  collector:
    adxp-adapter:
      host: localhost    # adxp-adapter地址
      port: 8086        # adxp-adapter端口
      username: dianxin  # 登录用户名
      password: dianxin@123  # 登录密码

测试工具

1. 系统集成测试

cd /Users/tianjianyong/apps/Company/QAUP-Management/tools
./test_adxp_websocket_system.py

2. WebSocket连接测试

cd /Users/tianjianyong/apps/Company/QAUP-Management/tools
./test_adxp_websocket_integration.py

3. 简单HTML测试页面

cd /Users/tianjianyong/apps/Company/QAUP-Management/tools
open test_adxp_websocket.html

日志监控

adxp-adapter日志

  • WebSocket连接建立/断开
  • 消息广播统计
  • 错误信息记录

QAUP系统日志

  • WebSocket客户端连接状态
  • 消息接收和处理
  • 错误和异常处理

性能优势

  1. 实时性提升: 消息从数据中台到QAUP系统的延迟从250ms降低到几乎实时
  2. 资源消耗降低: 避免频繁的HTTP请求减少网络和CPU开销
  3. 系统稳定性增强: 避免HTTP超时和轮询堆积问题
  4. 扩展性改善: 支持多客户端订阅同一数据流

故障排除

1. 连接失败

检查以下配置:

  • adxp-adapter服务是否正常运行
  • 端口配置是否正确
  • 网络连接是否正常

2. 消息接收异常

检查以下方面:

  • 数据中台连接是否正常
  • ADXP SDK是否正常工作
  • 消息解析逻辑是否正确

3. 性能问题

监控以下指标:

  • WebSocket连接数
  • 消息处理速率
  • 内存和CPU使用情况