Scut是一个开源、免费、稳定、快速开发的游戏服务器引擎,支持开发人员使用Python脚本语言或C#语言开发,底层采用C#编写,基于MVC框架思想设计,开发人员只需要关注如何定义数据实体类及属性,不再需要关注多据库(MSSQL、MySql等)及表设计,Scut会帮助您自动检测生成相应数据库的表结构。
作为游戏服务器引擎,Scut具有8大优势特性。支持Windows/Linux多平台部署;支持MSSQL、Mysql等多数据库;支持HTTP、Socket多通讯协议;支持多服务器耦合分布式架构;支持使用Python脚本开发,维护时热更新;支持数据临时或永久的缓存,降低数据库压力,数据可同步或延迟更新。此外,更具有“低门槛,开发容易,提供丰富的游戏模块中间件及例程”,以及“低内存和CPU占用,24小时不使用的对象自动交换至数据库,并从内存移除”等优点。
游戏服务器引擎Scut(www.scutgame.com)还提供了丰富的AIP和成熟的游戏模块中间件,助力你的游戏服务器应用快速开发。
服务器层次图
服务器支持同时提供Http和Socket两种通讯接入方式;使用二进制协议,可以通过“协议生成器”工具快速定义客户端与服务器的接口通讯协议,并同时生成客户端与服务器两端的接口通讯代码。
提供的游戏模块中间件可以方便快速构建应用,特别对繁琐的渠道登录和充值的SDK模块接入进入封装,简单的配置即可完成接入。
游戏数据处理是最重要、最复杂、也是最容易出错的部分,框架封装了对数据库数据的读取、更新、删除和表的创建维护等管理,及支持MSSQL、Mysql等多数据库;让开发人员不必再关心数据库,只需要定义自己的数据实体类及属性;另外还提供数据缓存管理,可以对使用频繁数据进行缓存,在一定时间内未使用的缓存置换出去,并更新到数据库;缓存中改动的数据会间隔10分种异步更新到数据库(也可以时时更新)。
服务器架构示意图
服务器拓扑结构示意图
精简的服务器结构示意图