DuoDuo
DuoDuo copied to clipboard
简单好用易用的游戏和APP服务端JAVA开发共用模块
DuoDuo | Wiki
Wiki
https://github.com/qiunet/DuoDuo/wiki
协议支持
支持一个端口上启动多协议的监听!
| 是否支持 | Tcp | Kcp | WebSocket | Http |
|---|---|---|---|---|
| Protobuf | √ | √ | √ | √ |
| Json | x | x | x | √ |
Git配置
- 不对换行符做自动转换
git config --global core.autocrlf input
模块简介
| 模块名 | 简介 |
|---|---|
| Quartz | 定时调度相关的模块 |
| CfgReader | 配置文件读取的模块 |
| QiunetUtils | 各种基本工具类 |
| QiunetDatas | Mysql和Redis以及本地Cache使用模块, 实现了异步更新等功能. |
| Entity2Table | 根据Do对象自动生成和更新数据库结构的模块 |
| ProjectInit | 通过xml配置.自动生成Do Bo xml Service和调用的类 |
| FlashHandler | 能启动Tcp Http WebSocket作为服务的模块 |
| GameTest | 行为树机器模拟人测试的模块 |
| JavaAgent | 可以通过javaAgent 最后热加载指定的class |
| LogRecord | 日志记录模块 |
| all | 打包成一个duoduo-all 方便调用的模块. |
服务器结构
系统架构

项目架构

安装环境
- jdk 17
- maven 3.5
- Mysql(MariaDB) Redis 两个必须都有.
- 推荐使用 IntelliJ IDEA(Eclipse 对module的使用感觉不是很好).
引用
<dependency>
<groupId>io.github.qiunet</groupId>
<artifactId>duoduo-all</artifactId>
<version>8.0.1</version>
</dependency>
示例
自己写了服务器端模板工程. 可以参考模板项目