首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。...本服务器虽然参考了其设计,但是还是有很大的不同,因为这个服务器框架主要是用在linux系统之上,而网狐棋牌是基于Windows平台的,严重依赖于windows sdk。...这个架构延续了网狐棋牌在网络组件所作的努力,这个棋牌服务器也使用异步IO作为网络的工作方式,更为彻底的是其数据库也是采用异步架构。..., 图1是总体架构图。从图上我们看到服务器的整体架构分为三层:Libraries, Core和Applications。...图1 棋牌游戏服务器端总架构 Libraries 主要由4个库组成,其中boost::thread是一个跨平台的线程库,boost::asio是跨平台的异步IO库,protobuf则是用来序列化服务器和客户端协议的

4.6K70

棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。...本服务器虽然参考了其设计,但是还是有很大的不同,因为这个服务器框架主要是用在linux系统之上,而网狐棋牌是基于Windows平台的,严重依赖于windows sdk。...这个架构延续了网狐棋牌在网络组件所作的努力,这个棋牌服务器也使用异步IO作为网络的工作方式,更为彻底的是其数据库也是采用异步架构。..., 图1是总体架构图。从图上我们看到服务器的整体架构分为三层:Libraries, Core和Applications。...图1 棋牌游戏服务器端总架构 Libraries 主要由4个库组成,其中boost::thread是一个跨平台的线程库,boost::asio是跨平台的异步IO库,protobuf则是用来序列化服务器和客户端协议的

2.5K71
您找到你想要的搜索结果了吗?
是的
没有找到

棋牌游戏服务器架构: 总体设计

首先要说明的是, 这个棋牌游戏的服务器架构参考了网狐棋牌架构。网狐棋牌最令人印象深刻的是其稳定性和高网络负载。...本服务器虽然参考了其设计,但是还是有很大的不同,因为这个服务器框架主要是用在linux系统之上,而网狐棋牌是基于Windows平台的,严重依赖于windows sdk。...这个架构延续了网狐棋牌在网络组件所作的努力,这个棋牌服务器也使用异步IO作为网络的工作方式,更为彻底的是其数据库也是采用异步架构。..., 图1是总体架构图。从图上我们看到服务器的整体架构分为三层:Libraries, Core和Applications。...图1 棋牌游戏服务器端总架构 Libraries 主要由4个库组成,其中boost::thread是一个跨平台的线程库,boost::asio是跨平台的异步IO库,protobuf则是用来序列化服务器和客户端协议的

2.2K90

棋牌游戏服务器架构: 详细设计(二) 应用层设计

这里的应用层,指的是CenterServer、LogonServer、LogServer、RoomServer等几个服务器,另外还包括游戏模块的设计。不过游戏模块和前4个服务器的设计很不相同。...这里先说一下服务器应用的详细设计。 这上面提到的4个服务器都需要响应客户端(这里的客户端的意思是泛指)的请求,进行数据库操作,同时还要能够配置,以及显示系统运行的状态信息等。...图2 CenterServer维护的信息结构 因为前面已经详细介绍了应用层架构,所以这里只是列出IModel的实现,至于IController的实现,则是解析请求。...而Table则是处理公共棋牌游戏逻辑的地方。主要包括找椅子坐下,离开等。而具体地游戏命令比如德州扑克的加注等会由Table转发给GameModule进行处理。

1.2K130

系统架构之二(棋牌类游戏常用架构

棋牌类游戏常用架构: 我从事过4年的棋牌类游戏开发,使用过的架构大致如上,各模块解释如下。...LoginServer: 登陆服务器,主要负责player 的登陆请求,验证player的合法性,为合法的player分配session,与cilent 采用短连接方式,可以有多个来进行负载均衡。...GateWay: 网关服务器,有多个来做负载均衡,与client 使用长连接方式,client发送的消息都通过GateWay转发给大厅服务器或游戏服务器,大厅服务器或游戏服务器返回给client的消息也都经过...LobbyServer:大厅服务器,可以有多个,负责游戏大厅中功能,例如游戏桌数目,各游戏桌在线人数等等。 GameServer:游戏服务器,多个,不同的游戏有不同的游戏服务器,具体游戏的逻辑实现。...dbmgr: 数据服务器,所有需要持久的数据,都经过dbmgr与数据库进行交互,dbmgr通过数据缓存,批量事务,本地持久等手段大大提高整体系统性能。

2.2K71

棋牌游戏服务器架构: 详细设计(二) 应用层设计

这里的应用层,指的是CenterServer、LogonServer、LogServer、RoomServer等几个服务器,另外还包括游戏模块的设计。不过游戏模块和前4个服务器的设计很不相同。...这里先说一下服务器应用的详细设计。 这上面提到的4个服务器都需要响应客户端(这里的客户端的意思是泛指)的请求,进行数据库操作,同时还要能够配置,以及显示系统运行的状态信息等。...图2 CenterServer维护的信息结构 因为前面已经详细介绍了应用层架构,所以这里只是列出IModel的实现,至于IController的实现,则是解析请求。...而Table则是处理公共棋牌游戏逻辑的地方。主要包括找椅子坐下,离开等。而具体地游戏命令比如德州扑克的加注等会由Table转发给GameModule进行处理。

93440

棋牌游戏服务器架构: 详细设计(二) 应用层设计

这里的应用层,指的是CenterServer、LogonServer、LogServer、RoomServer等几个服务器,另外还包括游戏模块的设计。不过游戏模块和前4个服务器的设计很不相同。...这里先说一下服务器应用的详细设计。 这上面提到的4个服务器都需要响应客户端(这里的客户端的意思是泛指)的请求,进行数据库操作,同时还要能够配置,以及显示系统运行的状态信息等。...图2 CenterServer维护的信息结构 因为前面已经详细介绍了应用层架构,所以这里只是列出IModel的实现,至于IController的实现,则是解析请求。...而Table则是处理公共棋牌游戏逻辑的地方。主要包括找椅子坐下,离开等。而具体地游戏命令比如德州扑克的加注等会由Table转发给GameModule进行处理。

1.9K120

服务器架构分析

今天写一下游戏服务器架构,主要还是还是分析下服务器架构的原理,以及解决的问题 1、服务器架构演变的最主要的原因是 1、解决压力的问题,想用较低的价值组合完成任务,也就是一堆垃圾服务器组成集群完成任务...2、解决业务需求,比如这种跨服的需求,如果不单独做一个服务器,业务交互将及其复杂 2、典型的服务器架构介绍 下图基本上是苏州这边游戏公司的服务器架构图。 ?...(支持热更新),开发者无需重复的实现一些游戏服务端通用的底层技术, 将精力真正集中到游戏开发层面上来,快速的打造各种网络游戏,之前创业的时候用过的引擎,引擎已经商业化,现在叫comblock 4、关于服务器架构分布式的看法...简单的服务器能搞定的就不要搞什么复杂的架构,听叔的,你把握不住。...5、总结 所有的服务器架构都是为业务而存在,从游戏出发,根据需求扩展自己的服务器架构。 下期我们从头简单的写一个tcp 服务器

1.8K20

应用技术架构 —— 无服务器架构

服务器(Serverless)架构 2012 年,iron.io 首次提出 Serverless 概念。...无服务器架构背景 计算机算力发展演进 计算机发展经历了大型机、小型机、PC 机、虚拟机和云服务器(大多数云服务器也是虚拟机)。...Serverless 发展历程 Serverless 简介 无服务器架构是指应用程序使用第三方 Function 和服务,但不需要管理服务器。...无服务器计算主要供应商 无服务器架构使用场景 小程序 / Web / Mobile / API 后端服务; 大规模批处理任务处理; 短暂、无状态应用,对冷启动实践不敏感; 基于事件驱动架构的在线应用和离线数据处理...应用技术架构主要包括微服务架构、服务网格架构、无服务器架构、分布式多运行架构等; 3. 应用部署与管理主要包括但不限于虚拟化技术、容器技术与容器编排等; 4.

1.9K40

「无服务器架构」Openwhisk 系统架构概览

OpenWhisk是一个事件驱动的计算平台,也称为无服务器计算或功能即服务(FaaS),用于响应事件或直接调用而运行代码。下图显示了高级OpenWhisk体系结构。 ?...此外,开发人员现在只关注代码,而不必担心监视,修补和保护基础服务器,存储,网络和操作系统基础结构。 与其他服务和事件提供程序的集成可以随包一起添加。一揽子计划是一堆提要和操作。...所有这些组件共同构成了“无服务器基于事件的编程服务”。为了更详细地解释所有组件,让我们跟踪动作在系统发生时的调用。...无服务器引擎的核心工作是OpenWhisk中的调用:执行用户输入到系统中的代码,并返回执行结果。 创建动作 为了提供一些上下文说明,我们首先在系统中创建一个动作。...进入系统的第一个入口是通过nginx,“ HTTP和反向代理服务器”。它主要用于SSL终止并将适当的HTTP调用转发到下一个组件。

2K10
领券