iohao / ioGame-example

ioGame 网络游戏服务器框架示例集合

Home Page:http://game.iohao.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ioGame

无锁异步化、事件驱动的架构设计;轻量级,无需依赖任何第三方中间件或数据库就能支持集群、分布式
通过 ioGame 可以很容易的搭建出一个集群无中心节点、集群自动化、多进程的分布式游戏服务器
包体小、启动快、内存占用少、更加的节约、无需配置文件、提供了优雅的路由访问权限控制
让开发者使用一套业务代码,无需改动,支持多种连接方式:WebSocket、TCP、UDP
让开发者用一套业务代码,能轻松切换和扩展不同的通信协议:Protobuf、JSON
近原生的性能;业务框架在单线程中平均每秒可以执行 1152 万次业务逻辑
代码即联调文档、JSR380验证、断言 + 异常机制 = 更少的维护成本
框架具备智能的同进程亲和性;开发中,业务代码可定位与跳转
架构部署灵活性与多样性:既可相互独立,又可相互融合
可同时与同类型的多个游戏逻辑服通信并得到数据
逻辑服之间可相互跨进程、跨机器进行通信
支持玩家对游戏逻辑服进行动态绑定
能与任何其他框架做融合共存
对 webMVC 开发者友好
无 spring 强依赖
零学习成本
javaSE

http://game.iohao.com

JDK 21
AGPL3.0
gitee star github star



阅读前的建议

阅读综合示例这部分时,建议先看简单介绍快速从零编写服务器完整示例这两部分;

源码目录介绍

.
├── example (示例)
│   ├── example-broadcast (广播示例)
│   ├── example-cluster-run-one (集群示例)
│   ├── example-endpoint 示例目录 玩家动态绑定逻辑服节点
│   ├── example-for-spring (spring集成示例)
│   ├── example-for-tcp-socket (对外服使用tcp协议示例)
│   ├── example-hook 示例目录 钩子相关(心跳,用户上线、下线)
│   ├── example-interaction (逻辑服与逻辑服之间的交互,可跨进程通信)
│   ├── example-interaction-same 示例目录 逻辑服间的相互通信;请求同类型多个逻辑服的结果集(可跨进程)
│   ├── example-parent
│   ├── example-redisson-lock (分布式锁)
│   ├── example-redisson-lock-spring-boot-starter (分布式锁 for springBootStarter)
│   └── example-run-one (快速启动示例)
├── example-game-collect (实战示例、坦克)
│   ├── fxgl-tank (游戏引擎-坦克游戏启动端)
│   ├── game-common (一些通用的功能)
│   ├── game-common-proto (示例 pb )
│   ├── game-external (对外服)
│   ├── game-logic-hall (登录逻辑服)
│   ├── game-logic-tank (坦克逻辑服)
│   └── game-one (一键启动 游戏网关、游戏逻辑服(登录和坦克)、对外服)

综合示例请看

github Gitee
综合示例源码 综合示例源码

jmeter 压测

https://gitee.com/iohao/iogame-example/tree/main/example/example-meter

About

ioGame 网络游戏服务器框架示例集合

http://game.iohao.com/

License:GNU Affero General Public License v3.0


Languages

Language:Java 99.4%Language:JavaScript 0.5%Language:HTML 0.1%Language:Shell 0.0%