Scut开源游戏服务器引擎
简介
Scut游戏服务器引擎使用C#语言开发,特别适用于手机网络游戏,支持使用Python脚本进行游戏开发;支持MSSQL/Mysql数据库;支持HTTP/Socket协议同时接入;采用实体类对象建模,自动构造数据库表结构生成和修改语句;业务逻辑层使用C#/Python脚本开发,提供了丰富的类库和API接口,极大降低了开发人员的技术要求。
游戏中间件
在游戏的开发过程中,积累了大量的例程,提供和开放大量的中间件:
登录系统
建角系统
充值系统
排行榜系统
任务系统
聊天系统
邮件系统
公告系统
广播系统
GM命令系统
新手引导系统
问答系统
媒体礼包系统
新手卡系统
商城系统 等成熟系统,只需简单使用脚本就可以马上快速完成相应系统功能。
框架性能
在架构上,可以支持多服务器耦合架构,可以分离业务到不同服务器,以提升在线人数,如战斗服务器、聊天服务器分别部署至不同物理服务器;根据业务等级,实现不同等级的写库需求,默认前提下,数据更新将延迟10分钟写入数据库,提供预读机制,极大降低对数据库的依赖,哪怕数据库网络短期中断也不会形成脏读; 服务器内存和CPU占用低,对象在一定时间内(24小时)未登陆将会被交换至数据库,并从内存卸下,节省内存利用率(16核服务器,20个游服平均CPU低于10%,峰值低于30%);
资源
Github代码库:https://github.com/scutgame/scut
OSChina代码库:https://git.oschina.net/scutgame/Scut
博客园地址:http://www.cnblogs.com/scut/
技术交流QQ群:138266675
更新日志
版本:5.6.3.5 (2013-11-25) Unstable
- 优化实体ChangeKey队列,减少写库IO(默认为5分钟写入一次数据库)
- 优化Protobuf序列化启用自动GZip压缩,减少Redis内存消耗
- 修正MySql操作命令的Bug
版本:5.5.3.5 (2013-11-12) Release
- 增加对Linux平台的支持
- 去掉对MSMQ消息队列的依赖
- 从这个版本开始,Scut游戏服务器引擎将Redis作为必备的存储,数据库是可选存储
- 增加Redis过期的缓存自动加载功能
- 日志数据库以年月划分表
版本:5.3.3.3 (2013-10-26) Release
- 支持Mysql数据库
- 简化DLL数量
- 简化配置
- 简化GM命令,并分离配置