游戏开发论坛

 找回密码
 立即注册
搜索
楼主: sleeptiger

游戏服务端编程--场景服务器探讨

[复制链接]

1

主题

2

帖子

9

积分

新手上路

Rank: 1

积分
9
发表于 2014-8-31 11:52:28 | 显示全部楼层
sleeptiger 发表于 2013-8-13 13:07
意思是可以对功能分类开线程

1.聊天服务器

请问这些服务器是各自都独立一个进程吗?

0

主题

8

帖子

30

积分

注册会员

Rank: 2

积分
30
QQ
发表于 2014-10-21 10:45:53 | 显示全部楼层
看了题目本来还想来讨论讨论,看了楼主分析,我没什么想法了!估计对基本游戏服务器结构都不是很了解吧,性能瓶颈各种东西也不是很清楚吧

0

主题

10

帖子

85

积分

注册会员

Rank: 2

积分
85
发表于 2014-10-27 13:15:26 | 显示全部楼层
一般来说游戏服务端都有 场景服务器吧,不谈网页服务器

看到这句话时,还以为楼主要讨论什么高大上的框架。估计连网页游戏的服务器框架都没见过吧!200在服务端完全没压力,而且游戏的压力也不可能会在逻辑层面,主要都是网络io,数据库io。现在随便一个CPU,它的计算能力都不可能是百位这种数量级的。就200人怎么可能吃满CPU!除非在死循环。

0

主题

9

帖子

60

积分

注册会员

Rank: 2

积分
60
发表于 2014-10-28 20:48:09 | 显示全部楼层
cpu的运算很快,如果服务器不是需要做一些碰撞检测之类的事情的话,像什么计算技能伤害之类的,额,毫秒钟的事情。
然后,没用过多线程来处理,不会我认为多线程要么会导致业务逻辑复杂到hold不住,要么就是需要到处加读写锁以至于还不如单线程。

88

主题

2743

帖子

4227

积分

论坛元老

Rank: 8Rank: 8

积分
4227
发表于 2014-10-28 21:12:37 | 显示全部楼层
好吧,“WOW属于即时战斗的动作类游戏,那么1个人做的任何动作都会通知到 其他99人”

楼主明确1个人的周围能围上另外99个人?楼主真写过或者看过mmorpg的服务器源代码?

1

主题

23

帖子

111

积分

注册会员

Rank: 2

积分
111
发表于 2014-11-4 16:56:07 | 显示全部楼层
收到数据->丢入战斗逻辑(服务器单线程可以干很多事情)->处理战斗逻辑->结果异步丢到分发逻辑->
广播给需要知道人->收工.

点评

然后再将“丢入”的关键代码端贴出来,让大家看看你是怎么实现这个“战斗逻辑”的。  发表于 2014-11-4 21:15
先别乱。将“收”数据的关键代码贴出来好吗?应该包括客户端和服务器端的。  发表于 2014-11-4 21:13

1

主题

23

帖子

111

积分

注册会员

Rank: 2

积分
111
发表于 2014-11-4 21:47:37 | 显示全部楼层
这要贴代码你看的完么
楼上这意思不够详细么?汗。。。
帮你细化下。
比如我们的moba项目,5v5即时对战。
1.客户端坦克发送个开火命令
2.服务端通过来源客户id和对应战斗频道,丢入世界主循环队列。(世界渲染线程)
3。世界循环队列每贞运行,将对应的数据包分配到渲染对象玩家拥有的坦克。
4。当渲染树执行到坦克队并指定到该坦克,执行该条开火命令。(我们这里是创建一颗子弹,并加入场景子弹渲染列表)
5。对象侦测修改器,检测到场景增加了一颗子弹,把当前数据格式化,丢入广播用户发送数据队列。
6。网络io线程发现列表中有待发送数据,发送给对应的客户端。
7。客户端收到信息,创建一颗子弹。

1

主题

23

帖子

111

积分

注册会员

Rank: 2

积分
111
发表于 2014-11-4 21:48:17 | 显示全部楼层
icesun963 发表于 2014-11-4 16:56
收到数据->丢入战斗逻辑(服务器单线程可以干很多事情)->处理战斗逻辑->结果异步丢到分发逻辑->
广播给需要 ...

不明白欢迎继续提问

88

主题

2743

帖子

4227

积分

论坛元老

Rank: 8Rank: 8

积分
4227
发表于 2014-11-4 23:22:42 | 显示全部楼层
本帖最后由 快乐杰克 于 2014-11-4 23:26 编辑

”这要贴代码你看的完么“看到这里,我只能呵呵了。

如果没有代码来说明,你请继续。。。

88

主题

2743

帖子

4227

积分

论坛元老

Rank: 8Rank: 8

积分
4227
发表于 2014-11-4 23:25:01 | 显示全部楼层
icesun963 发表于 2014-11-4 21:47
这要贴代码你看的完么
楼上这意思不够详细么?汗。。。
帮你细化下。

来简单点的。

你能画出来你描述这个过程的时序图吗?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-8-15 17:15

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表