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

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

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

4.7K70

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

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

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

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

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

    2.3K90

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

    这里的应用层,指的是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.4K71

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

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

    97340

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

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

    1.9K120

    棋牌渗透测试

    一、信息收集这里通过fofa进行收集,语法为:body=某棋牌 && title=xxx图1-1 fofa资产收集二、漏洞挖掘通过手工及AWVS测试站点手工测试发现弱口令admin/admin成功进入后台图...2-1 棋牌后台查看相应功能点图2-2 棋牌用户图2-3 棋牌控制AWVS测试发现Sql注入图2-4 AWVS高危漏洞三、漏洞利用由于手工进入后台无法getshell,这里使用AWVS扫描出的Sql注入进行测试首先将数据包放入...Sqlmap进行测试如下图:图 3-1 Sqlmap测试图通过图3-1得知存在Sql注入漏洞且是mssql数据库,接下来查看对方是否数据库为dba权限,如果是尝试os-shell获取对方服务器权限图 3...-2 DBA权限图图 3-3 os-shell至此已拿到对方服务器权限成功执行任意命令结束语出此文章的初衷也是为了告诫在玩棋牌、db或者有想去玩的xdm不要去参加,网络db终害己、踏踏实实赚钱才是明路!

    18510

    服务器架构分析

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

    1.9K30

    TDD 在棋牌游戏算法中的应用

    棋牌游戏一直以来都是受欢迎的休闲娱乐方式,而其中的算法设计对于游戏的平衡性和公正性至关重要。...测试驱动开发(Test-Driven Development,简称TDD)正是一种在棋牌游戏算法开发中广泛应用的方法。本文将探讨TDD在棋牌游戏算法中的应用,并介绍其优势。...首先,TDD能够确保棋牌游戏算法的正确性。在TDD中,开发者首先编写测试用例,定义了期望的输入和输出。然后,根据测试用例编写算法代码。...此外,TDD还能够提高棋牌游戏算法的性能。在TDD的过程中,开发者需要不断运行测试用例,检查算法的性能是否满足要求。...对于开发者而言,采用TDD方法进行棋牌游戏算法的开发是一种明智的选择。

    20120
    领券