当前课程知识点:游戏程序设计 >  第十三章 《开发工具 》 >  13.3 腾讯开发组件介绍 >  13.3 腾讯开发组件介绍

返回《游戏程序设计》慕课在线视频课程列表

13.3 腾讯开发组件介绍在线视频

下一节:13.4 网络通信+业务框架介绍

返回《游戏程序设计》慕课在线视频列表

13.3 腾讯开发组件介绍课程教案、知识点、字幕

那现在就是我已经知道怎么做了

难道我真的用开始从

HelloWorld开始写吗

就是腾讯有没有一些服务组件能够让我选

我直接拼就好了

对不对

何必要从头写呢

其实答案是肯定的

肯定是有的

就是作为互娱的服务器开发

我们实际上

一直现在会有一个开发框架叫tsf4g

英文名字就不念了

挺长的

然后其实他的核心思想就是

会把之前很多业务重新重复造轮子

公共逻辑提取在一起

然后形成自己的公共组件

一方面是提升效率

另外一方面是把它的通用化做好

这样的话

哪怕我下次有新的项目

我可以直接用

而且它提出来另外一个更好的意识

组件跟组件之间的关联会做得

更紧密

更通用化

如果把它放到各个项目中自己去做的话

那可能就

天差地别的话没有没有办法统计了

那讲到这些组件

第一个要跟大家介绍的就是TGW

其实它是我们腾讯的公共网关

它其实并不在我们刚刚那个图里面

它不属于我们项目里面的任何一个环节

如果刚刚说的是一个网红店

那可能它就像是一个shopping mall

一个大门一样

就我那个店里面

shopping mall里面有很多的网红店

它作为通入这个网店的第一个关口

然后它是腾讯对外的一个唯一的出口

它主要的帮我们做一些可靠性

扩展性

然后高性能防攻击

比如说这个商场要混下来一些流氓地痞的

那门口的保安就直接把它拒绝了

但是怎么什么叫可靠性和扩展性的

比如说我这个业务里面的一台服务器

挂了这个店挂了

但是他有一个分店

那我这个TGW这个保安就可以直接帮我

把这个人引到他的分店去

对客户来说

他只想去这家店

他用不用管是去那家店

所以对他来说是没有任何感知的

所以这TGW作为一个接入层

一个比较重要的一个作用

另外一个就是高级门童tconnd就是

它其实是负责我们接入层的一个

主要的组件核心组件

他能够支持的是TCPU udp

http等很多的协议

然后其实除此之外

如果大家脑海里还有刚刚那个图的话

我们这个高级门童还做了一点

就是他可以帮我们做一些权限的校验

权限校验是我们所有接口里面

任何一个业务里面都要第一步就要做的

就是我要先确定这条协议是这个人发起的

那你就没有必要把它在做到业务逻辑里面

直接把它做到接入层

类似于这个门童

他在接受客人的同时

首先要核对一下客人的身份

然后你的预约码是多少

电话号码是多少OK没有问题了

我们在往后走

这个是它就是也是我们把很多东西

凑成一个组建的一个比较重要的意义

另外一个就提到了我们那个消息队列

消息队列就是我们刚刚所说的数据通道

模块模块之间是通过消息队列

来彼此之间进行数据交换

它重点的实现就是

官网内存构建无锁双通道

循环队列就是很拗口

但是我相信

如果有计算机经验的同学

应该大概也是能理解它的实现方式的

无非就是他们两之间有两个队列

然后一个负责往这边写一个往这边写

做一个交换是没有锁的

但是没有计算机的同学就知道就行了

它就像一个电话一样

两个人打电话就可以做一些数据的交互了

然后核心逻辑层

就是swift它实际上就是一个框架

这个框架它提供了同步与异步的两种模式

然后对于业务来说

我只要往里面填

我的逻辑就行了

而且

如果就像刚刚那个她是服务员的话

他不一定就是一个服务员

就是我要把所有的事情告诉他

我可以根据事情的种类

比如说点餐

然后这个是给她美甲

就是每个服务员都可以有各自的能力

所以其实他是可以分成很多组的

并行的一个存在

那它就是我们逻辑层的一个组件

这个就是我们的数据层了

类似于我们这个仓库一样

其实在腾讯内部

tcaplus已经用了很多年了

它比相当于很多的之前老的一个

比如说TTC也好

或者说ckv也好

就是它会有高性能

低成本

高可用性

高应用性等特点

比如说我做业务方

我不用太关心数据层的一些问题

比如说它down机了怎么办

他数据丢了怎么办

或者说我自己又出现问题

我要回挡的某一个阶段

其实这些能力它都已经帮我帮我们做好了

所以我们使用它就可以了

这个是非常已经非常成熟的一个存储方案

TCM其实在刚刚那个图里面是没有

TCM进程集中管理系统

其实如果还是用门童服务员做比较的话

TCM更像是整个店的店长

就是他要知道每个进程的状态

要知道当前的配置什么样的

它能够集中的去调用重启每个进程

所以

它更多的功能就是提供了部署集中管理

然后状态检查起停等等

所以对于我们来说非常简单

我们只要远程的在管理端TCM

就可以控制到所有在线的一个服务器

和它进程一个情况

包括我还可以把一些配置直接推送过去

让它重启就远程调用这些

调度这些进程就是我们的店长

其他主要组成TDir

TVersion就是

我们如何判断打开王者荣耀了

它提示你版本已经更新了

其实都是通过这种公共组件来实现的

而且没有没有必要

每个业务都做一套

所以把它做成公共的

每个业务都可以用就可以了

比如排行榜或者锁服

其实这些在TSF4G里面

都已经有成熟度之间

那已经有了这些组件了

我们怎么玩

其实就回到刚刚那个图接入层

用Tcound解决连接的问题

随后封装好这个服务员

它所要做的每一个逻辑是什么样的

然后OpenAPI不变

那存储层后除

我们就用Tcound这个组件

其实单纯对这个接口来说

我这样一套架构就已经解决这个问题了

但是对整个业务来说

它的接口特别特别多

所以这个就是

大概八年前的一个农场的一个架构图

所以我们根据前端的一个请求方式

然后选择对应的更合适的一个接入组件

然后同时会按照功能去把

服务器逻辑进行一个拆分

可能有首页svr

有偷sve

还有什么虫草svr种植svr

就是每个服务器负责一个模块的

所有的能力

这样的好处就是

当我其中有一个服务器挂掉的时候

不至于影响其它服务器的逻辑

不可能说

因为我偷这个服务器挂了

导致我种都种不了了

所以它们分开也是有一些设计上的考虑的

同时后台我们可以用Tcaplus

或者一些其他的存储来负责

如果把TSF4G全部打开的话

那我们大概就能看到这样一套东西了

如果喜欢玩乐高的同学

大概就可以把它理解成

我们是在这样的一个架构上构建出来的

很多的一个积木或者说模块

那对我们服务器来说

如果我对它们很了解

其实我把它们拼装在一起

就可以很快的组成一个minigeme

游戏程序设计课程列表:

第一章 《游戏开发导论》

-1. 1什么是游戏(上)

--1.1 什么是游戏(上)

--选择题

-1.2 什么是游戏(下)

--1.2 什么是游戏(下)

--选择题

-1.3 游戏是如何开发出来的

--1.3 游戏是如何开发出来的

-1.4 游戏引擎(上)

--1.4 游戏引擎(上)

-1.5 游戏引擎(下)

--1.5 游戏引擎(下)

--单选题

-1.6 如何成为一个游戏开发者

--1.6 如何成为一个游戏开发者

--多选题

第二章 《游戏服务器概述 》

-2.1 什么是游戏服务器

--2.1 什么是游戏服务器

--单选题

-2.2 游戏服务器的和分类发展

--2.2 游戏服务器的和分类发展

--单选题

-2.3 核心技术和实现难点

--2.3 核心技术和实现难点

--单选题

-2.4 设计原理与方法论

--2.4 设计原理与方法论

--单选题

第三章 《《三维几何学基础》 》

-3.1 三维坐标系统

--3.1 三维坐标系统

--多选题

-3.2 向量与运算

--3.2 向量与运算

--单选题

-3.3 矩阵与线性变换

--3.3 矩阵与线性变换

--双选题

-3.4 四元数

--3.4 四元数

--多选题

第四章 《游戏循环及实时模拟》

-4.1 游戏循环概述(上)

--4.1 游戏循环概述(上)

--多选题

-4.2 游戏循环概述(下)

--4.2 游戏循环概述(下)

--单选题

-4.3 《无尽之路》的实现

--4.3 《无尽之路》的实现

--单选题

-4.4 支撑游戏的功能

--4.4 支撑游戏的功能

--选择题

-4.5 支撑游戏的机制与系统

--4.5 支撑游戏的机制与系统

--多选题

第五章 《随机数在游戏中的应用》

-5.1 基本介绍

--5.1 基本介绍

--单选题

-5.2 随机数生成器

--5.2 随机数生成器

--单选题

-5.3 随机数分布与应用

--5.3 随机数分布与应用

--单选题

第六章 《游戏性系统》

-6.1 什么是游戏玩法开发

--6.1 什么是游戏玩法开发

--单选题

-6.2 建立愿景 Vision

--6.2 建立愿景 Vision

--单选题

-6.3 划定边界 Scope

--6.3 划定边界 Scope

-6.4 迭代 Iteration

--6.4 迭代 Iteration

--单选题

-6.5 迭代 Iteration+抛光Polish

--6.5 迭代 Iteration+抛光Polish

--单选题

第七章 《实时图形渲染管道》

-7.1实时图形渲染管道 宏观渲染系统

--7.1实时图形渲染管道 宏观渲染系统

--单选题

-7.2实时图形渲染管道 应用阶段

--7.2实时图形渲染管道 应用阶段

--单选题

-7.3实时图形渲染管道 几何阶段

--7.3实时图形渲染管道 几何阶段

--单选题

-7.4实时图形渲染管道 光栅化阶段

--7.4实时图形渲染管道 光栅化阶段

--单选题

-7.5实时图形渲染管道 总结 参考

--7.5实时图形渲染管道 总结 参考

第八章 《材质着色与光照》

-8.1 物理回顾1

--8.1 物理回顾1

--单选题

-8.2 物理回顾2

--8.2 物理回顾2

--单选题

-8.3 材质 1

--8.3 材质 1

-8.4 材质 2

--8.4 材质 2

-8.5 材质3

--8.5 材质3

-8.6局部光照

--8.6局部光照

--单选题

-8.7 全局光照

--8.7 全局光照

--单选题

第九章 《游戏动画》

-9.1 动画介绍

--9.1 动画介绍

--多选题

-9.2 游戏动画介绍

--9.2 游戏动画介绍

-9.3 动画技术类型

--9.3 动画技术类型

--多选题

-9.4 骨骼蒙皮动画

--9.4 骨骼蒙皮动画

--多选题

-9.5 动画流水线

--9.5 动画流水线

--多选题

-9.6 动画前沿趋势

--9.6 动画前沿趋势

--多选题

第十章 《网络同步技术》

-10.1 .基本概念

--10.1 .基本概念

--多选题

-10.2 设计目标

--10.2 设计目标

--多选题

-10.3 传输数据分析

--10.3 传输数据分析

--多选题

-10.4 常用同步方案 1

--10.4 常用同步方案 1

-10.4 常用同步方案 2

--10.4 常用同步方案 2

-10.4 常用同步方案 3

--10.4 常用同步方案 3

-10.4 常用同步方案 4

--10.4 常用同步方案 4

--多选题

-10.5 方案对比

--10.5 方案对比

--多选题

第十一章 《游戏常用几何学》

-11.1 基本图元

--11.1 基本图元

--单选题

-11.2 图元距离(上)

--11.2 图元距离(上)

--单选题

-11.2 图元距离(下)

--11.2 图元距离(下)

--单选题

-11.3 图元相交测试+ 其他几何方法

--11.3 图元相交测试+ 其他几何方法

--单选题

第十二章 《游戏物理模拟》

-12.1 著名物理引擎介绍

--12.1 著名物理引擎介绍

--单选题

-12.2 物理引擎原理(上)

--12.2 物理引擎原理(上)

--单选题

-12.3 物理引擎原理(下)

--12.3 物理引擎原理(下)

--单选题

-12.4 游戏中的物理体

--12.4 游戏中的物理体

--单选题

-12.5 物理引擎使用入门

--12.5 物理引擎使用入门

--单选题

第十三章 《开发工具 》

-13.1开发语言

--13.1开发语言

--单选题

-13.2 开发环境

--13.2 开发环境

--单选题

-13.3 腾讯开发组件介绍

--13.3 腾讯开发组件介绍

--单选题

-13.4 网络通信+业务框架介绍

--13.4 网络通信+业务框架介绍

--多选题

第十四章 《分布式系统设计 》

-14.1 进程间通信(上)

--14.1 进程间通信(上)

-14.2 进程间通信(下)

--14.2 进程间通信(下)

-14.3 通信格式

--14.3 通信格式

-14.4 并发模型

--14.4 并发模型

-14.5 超时处理

--14.5 超时处理

-14.6 大系统小做(上)

--14.6 大系统小做(上)

--多选题

-14.7 大系统小做(下)

--14.7 大系统小做(下)

-14.8 架构层面的技术支持(上)

--14.8 架构层面的技术支持(上)

--单选题

-14.9 架构层面的技术支持(下)

--14.9 架构层面的技术支持(下)

-14.10 分布系统的关键能力

--14.10 分布系统的关键能力

--多选题

第十五章 《游戏人工智能》

-15.1 游戏人工智能综述

--15.1 游戏人工智能综述

-15.2 人工智能在游戏中主要方法 上

--15.2 人工智能在游戏中主要方法 上

--多选题

-15.3人工智能在游戏中主要方法 (下)

--15.3人工智能在游戏中主要方法 (下)

-15.4 人工智能在游戏制作中的应用领域1

--15.4 人工智能在游戏制作中的应用领域1

--多选题

-15.5 人工智能在游戏制作中的应用领域2

--15.5 人工智能在游戏制作中的应用领域2

-15.6 人工智能在游戏制作中的应用领域3

--15.6 人工智能在游戏制作中的应用领域3

--多选题

-15.7 人工智能在游戏运营中的应用实践(上)

--15.7 人工智能在游戏运营中的应用实践(上)

-15.8 人工智能在游戏运营中的应用实践(下)

--15.8 人工智能在游戏运营中的应用实践(下)

--多选题

第十六章 《游戏支撑系统 》

-16.1 游戏支撑系统(1)

--16.1 游戏支撑系统(1)

--单选题

-16.2 游戏支撑系统(2)

--16.2 游戏支撑系统(2)

--单选题

-16.3 游戏支撑系统(3)

--16.3 游戏支撑系统(3)

--单选题

-16.4 游戏支撑系统(4)

--16.4 游戏支撑系统(4)

--单选题

-16.5 游戏支撑系统(5)

--16.5 游戏支撑系统(5)

第十七章 《游戏逻辑服务器和反外挂》

-17.1 游戏逻辑服务器(上)

--17.1 游戏逻辑服务器(上)

--单选题

-17.1 游戏逻辑服务器(下)

--17.1 游戏逻辑服务器(下)

-17.2 外挂与反外挂(上)

--17.2 外挂与反外挂(上)

-17.2 外挂与反外挂(下)

--17.2 外挂与反外挂(下)

--多选题

第十八章 《运行环境和运维 》

-18.1运行环境

--18.1运行环境

--多选题

-18.2物理部署

--18.2物理部署

--多选题

-18.3系统的可运维性

--18.3系统的可运维性

--多选题

-18.4运维案列分析

--18.4运维案列分析

--多选题

13.3 腾讯开发组件介绍笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。