Skip to content

hylexus/xtream-codec

Repository files navigation

xtream-codec

xtream-codec logo

license JDK Maven%20Central

ProjectNaming

项目名来源: xtream-codec == xtream + codec

  • xtream == Extensible + Stream(发音特点合成)
    • Extensible: 可扩展
    • Stream: 非阻塞 的流式编程(projectreactor)
  • codec == Coder + Decoder

Intro

该项目是一个基于 projectreactor 的、和具体协议无关的、异步的、非阻塞的、TCP/UDP 服务端实现。

同时提供了一个基于 xtream-codec-server-reactiveJT/T 808 协议 服务端实现:

  • 支持多版本(V2013,V2019)
  • 支持分包
  • 支持加解密
  • 支持指令下发
  • 支持苏标附件服务
  • 支持链路数据订阅
  • 提供了一个基于 Spring BootDashboard

Modules

.
├── build-script  ## 构建脚本
├── docs          ## 文档
├── ext           ## 扩展模块
│     └── jt      ## JT/T 扩展
│         ├── jt-808-server-dashboard-spring-boot-starter-reactive  ## JT/T 808 扩展 - Dashboard - Server
│         ├── jt-808-server-dashboard-ui                            ## JT/T 808 扩展 - Dashboard - UI
│         └── jt-808-server-spring-boot-starter-reactive  ## JT/T 808 扩展
├── quick-start   ## quick-start 示例
│     └── jt      ## JT/T 示例
│         ├── jt-808-server-quick-start                   ## JT/T 808 服务端示例(不带 dashboard)
│         ├── jt-808-server-quick-start-with-dashboard    ## JT/T 808 服务端示例(带 dashboard)
│         ├── jt-808-server-quick-start-with-storage-blocking         ## JT/T 808 服务端[阻塞版-SpringMvc]示例(带 存储:clickhouse,mysql,postgres,minio)
│         └── jt-808-server-quick-start-with-storage-nonblocking      ## JT/T 808 服务端[非阻塞版-WebFlux]示例(带 存储:clickhouse,mysql,postgres,minio)
├── debug         ## 调试专用(不用理会)
│     ├── jt      ## JT/T 示例(不用理会)
│     │   └── jt-808-server-spring-boot-starter-reactive-debug   ## JT/T 808 服务端调试(不用理会)
│     ├── xtream-codec-core-debug                       ## xtream-codec-core 模块调试(不用理会)
│     ├── xtream-codec-server-reactive-debug-tcp        ## xtream-codec-server-reactive TCP 调试(不用理会)
│     └── xtream-codec-server-reactive-debug-udp        ## xtream-codec-server-reactive UDP 调试(不用理会)
├── xtream-codec-core                                   ## xtream-codec-core 核心编解码模块
└── xtream-codec-server-reactive                        ## 异步非阻塞的 TCP/UDP 服务端实现

Docs

QuickStart

License

xtream-codec 使用 Apache License, Version 2.0 开源许可证。 详情见 LICENSE 文件。

第三方依赖的许可证信息:

  • 请参考生成的 .jar 文件中的 META-INF/NOTICE.txt 文件 。
  • 或者, 执行 ./gradlew clean generateLicenseReport 之后查看生成的 build/reports/dependency-license/THIRD-PARTY-NOTICES.txt 文件。