00:00
大家好,欢迎来到自己教育课程的学习,本系列课程呢是自教第一季,从零开始搭建游戏服务器,本节课呢,给大家讲第16课,数据库相关的。本节课呢,还是两大内容,第一个就是我们的一个社区资源,第二个就是我们本节课一个核心内容。我们看第一点,第一点就是这个二维码呢,是我们的一个社区订阅号,大家可以关注一下啊,回复关键字客服呢,获取我们助教微助教的微信。大家加一下我们主要的微信啊,我们有一个课程通知群,大家可以进群啊。好,那我们看一下本节课的核心内容啊。本节课核心内容就是大家说一下我们啊数据库的相关的。数据库呢,在我们整个游戏服务器开发过程中呢,呃,只是作为数据的一些,呃缓一些保存啊一些那个相当于我们做一个呃数据的一个备份,同时呢,要看我们游戏游戏的一个。
01:02
一个类型啊,还有我们游戏的一个对于数据的一个要求,因为整个呃,包括我们兵哥大家讲的一套,那这套架构啊,是针对于怎么中小型,中小型游戏的,像休闲游戏的话,是没有任何问题的。如果你要做大型m Mo的话,这个框架本身呢,需要有很多的地方修改的。因为我们第一季的话,只是给大家展示了一个基础的一个可以跑通的一个框架的流程啊。呃,我们第二期的时候,也就是在我们下呃第二期第二学期的时候呢,会大家整合我们这个架构,会把我们的一些底层的数据全部封装出来,封装之后呃分离出来,分离出来之后呢,作为我们的一个基础库来调用就可以了,同时呢,我们还会完善我们的目前的架构思想,我给大家说看一下我们目前的架构的一个情况啊。我们先打开,先看一下我们流程啊。
02:05
整体来说呢,呃游戏,呃游戏对于数据库的要求呢,其实只是作为还不是太频繁,因为我们在DB前面有DBSO嘛,直接把数据会缓存到我们的一个DB server里面,DB server呢会直接跟我们DB相连,一般的话,我们用数据库呢,个人建议的还是买SQ就可以了。买做集群的话也是没什么问题的,对吧,包括后面一些,呃,你要做那个分库分表啊,怎么去做啊,这个都是在我后面给大家回答家讲的。主要前期呢,大家要把我们的整个最基础的流程,先知道怎么去调用协议这一块是吧,协议怎么处理呢。这个不是,这个是基础课程的,我们大家打开一下。OK,这就是我们game,我们来给大家放大一点。
03:06
好,我们放大一点。呃,在我们里面DBDB这里面,我们是这里只有一个DB在这里是吧,我们前面其实DB跟呃,DB跟那个我们今的相连的时候呢,是有一个DBDB把我们数据保存到和里面,本节课呢,只是大家介绍一下我们MY和reds的一些。呃,在我们在我们整个游戏服务器当中充当一个什么角色啊。首先跟大家说一下吧。他可能就是作为。作为的一个数据的什么。我放大一点。等他讲完那流程呢,我们再看我们代码就可以了,嗯,这呢是作为。属于的。数的一个保存就可以对吧。还有一个作为我吗?
04:00
数据的。读取这两个是最为重要的嘛,对吧,保存呢,我们有多种方式啊,比如说你作为做集群的。追寻的方式。也就是机群,大家有没有这个概念?什么叫集群?集群就是很多在一起对不对?这个集群方式呢,还要根据你的一个game server,就根据你游戏类型来做的,大家不可能做一个小游戏的话,你要把我们的集群全部建了,比如你建对吧,建十个服务器,十个十组MYSQ放在里面,你觉得有义吗?没什么意义是吧?我觉得这是小游戏的话,你直接用一个MYSQ就可以了,直接把玩家数据保存下来就可以了。其他的像呃,排行榜啊,等级啊,你可能作为里面存就足够可以了,对吧。这个radi的话也是一样,Red其实就是作为一个缓存服务器。它是作为什么热数据的,也就是说。也就是说我们可能读写频繁的时候呢,就可能直接放在里面就读,可能它前面的话。
05:04
应该还是有一个,就我们在这里面呢。内存或者catch都是可以的,对吧。内存和其也是作为我们相当于DB,这这放什么数据呢,也就是我还是其实也是对于一些热数据啊。对缓存作用,缓存数据啊。大家理解了吗?其实这两点是分开的,这red可以做排行榜,这块根据根据你自己的需求而定。大家理解了吧,也就是整个在整个架构设计当中啊,你game server的功能和你游戏的策划的一个,呃,要实现的一个什么样的游戏,跟游戏策划相关啊,就你策划这个要策划一个什么样类型游戏,就决定了你架构后面是怎么去呃分摊这个整个数据的数据流的一个分摊啊,那我们看给大家看一下,我们我之前给大家我之前的项目里面,大家看一下就可以了。
06:05
呃呃,MY思当时先说MY吧,我们把和MY结合在一起可以了,因为下节课也是一样的流程啊,就不给大家太讲太多,我们这节课我们这些列课程第一期的话只是给大家说一下那个MYS狗和red一些使用情况,因为这块我还没有涉及到一个业务流程层面的东西,所以说待只只是给大家讲代码的话也没什么意义,所以先简单说一下流程,完了在第二期的时候,等我们把架构。分层之后呢,全完全分离出来之后呢,按照基础库来调用之后呢,我们会把我们DB和我们的MYSQL里面全部会加进来啊。嗯。这是三个服务器啊,我们看一下我们的。对战服,对战服器实我这单独建了一个,那什么DB买SQ,因为我们游戏不是很大啊,很很小,所以说呢就属于休闲类游戏,所以人数呢也不是很多,我这见到也是直接。
07:04
用DB4直接去连我们的数据,这可能有一些,你看吧,这是我们获取商品列表啊,对吧,这是更新奖品的信息啊。是更新二维码的。密尔码全部是SQ里面的数据啊,执行的更新游戏配置啊,对吧。获取商品列表,这些都是页面来获取的。获取宣传列表对吧。就在最开始我给大家看展示那个游戏的时候,不有一个宣传语吗?下面一直滚动那个,其实就是这个宣传语的一个数据。这是我们。这是什么,我买思考啊,在整个下面的时候呢,我其实给大家啊,还有这是什么这什么,这是用户的一些积分的信息,积分系统。也是一样的,直接在我们DB里面去操作的。对吧。纸化,这是这是建了一个买的链接池,最大链接池的数量。
08:06
是吧,连接池的一个实验方式。啊,这已经不存在了,这些数据都已经不在了。大家可以简单看一下。完之后呢,这是我们的一些用户的信息。更改头像,就是大家说了,就是可能是我们那个。我们什么我们头像信息可能变了,微信头像信息啊,在这里就给大家做了一个一个转换。对吧,啊,这是读思考一些数据啊,更新数据啊,其实读和写我是分开了的,大家看到没,这可能没写太清,我看里面里面你分的很清了,你看这链接删除初始化,这是我们我们的什么key啊,怎么设置的全部有你看。对吧,全部设置好了。网络是用内存数据库的,全部设置了这些东西,ID圈,你看玩家道具啊什么之类的是吧,每个key都在这里面进行一个数据的保存,摇一摇的数据啊,天天向上是吧,那这里面也是用了一个链接池去给大家操作,大家可以去看一下。
09:14
好,这个是读,你看读读是什么样子的。对吧。知是更新update,更新我们数据。这个呢是我们写。显示怎么操作,大家可以看一下积分前七分后是吧,这是调试的一些信息。整个来说买S狗啊,还是red啊,我们在整个架构呢,是就是我们之前那套架构,也就是给大家第二期要整合那个架构呢,是这样子的,是在我们买circle的前面呢,怎么。其实是这样子的。对,是这样子的,也就是DB DB serve之后呢,是后面完了是我们也就我们把数据全部存在我们的里面,完之后呢,呃。
10:06
相当于MYSQL就作为一个数据的存盘。其实也可以作为存,也可以作为那个数据的是吧,但是呢,我这边。也是做了的。主要数据全部在里面交互,也就是在我们整个流程当中,在这个里面。为什么大家呢?呃,现在有一个有一个基础的印象就可以了,我们后面的话给大家讲的时候,这全部是有的,包括这之前的架构,你看这是。我们全举的这是日志系统,这是玩家结构,这是协议嘛。没人说明。整个全部是有的,嗯,微信系统第三方库。嗯,数据库大概流程就是这样子,大家如果在自己,因为可能你有编程经验啊,如果你要是有其他的一些设计思想呢,也是可以的,对吧。这块主要看你自己,但是斌哥这块呢,主要是。
11:07
好,所以说呢,呃,建议大家呢,就是有自己的一个设计思想的时候,也可以把它加到我们整个架构架构里面来啊。第一期的时候还是那样,给大家就是说了一下我们整个。架构的一个跑的流程啊呃,第二期的时候,如果报第一期的学员呢,我们在第二期呢,是给大家免费的,或者打一个折,打很低的一个折,大家还会学第二期的,因为我们是一个系统工程,我并不希望说通过赚钱来赚,通过什么通过这个技术来赚钱啊,因为大家一想报名呢,肯定是支持我们社区的,也想帮我把那个游戏这块,游戏服务器这块学好是吧,所以说这块兵哥呢,还是支持大家的,也是希望呢大家能够支持一下我们。有什么不好的,有不好,我斌哥这块课程讲不好的地方,我希望大家也能反馈一下,就给我们一个积极正面的一个反馈信息完,我们这边好做优化,对吧?所以说我希望大家在我们一起学习的过程当中啊,能够互相进步,因为人无完人嘛,可能谁都会有问题是吧,你可能对一个知识点的理解,因为你你的经验不同呢,可能对吧,还有你的工作年限的不同呢,可能对于某个知识点的理解起来可能是不同的,如果斌哥这块讲的不对的地方呢,我希望大家能够指出来。
12:22
就是在我们我们的一个微信群里面,大家可以去问一下对吧?呃,所有的是所有的所有的目目标啊,我们就希望能够把我们。把我会能够讲给大家,同时呢,大家来到这里呢,不是浪费时间,能够学到真真正的东西,能够学到之后呢,出去之后呢,可以用到的,对吧,这样才是我们彼此能够达到一个目的,对吧。嗯。好,如果大家有问题就在微信群里面问嘛,完了我们最后呢,嗯,Reds和my circlel呢,就是数据库和reds,我这边我就合并一节了,给大家简单说一下,我们在第二期的时候会专门给大家建一个DBSO完之后呢去一些操作,因为现在给大家讲的话也是讲一些菱形的东西,毛皮的东西,根本讲不到深深入的东西,比如我们呃买这里边SQ就怎么进行优化,你这块讲大家也不知道对吧,只有在实际编码过程中才会到。
13:17
我们最后一节给大家讲一下我们的一个课程总结,总结的话我就呃,只是也是对于我们整个代码流程啊,给大家再从头到尾再说一下就可以了。好吧啊,那我们就总结课件吧,好吧,我们下一课再见。
我来说两句