游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4747|回复: 16

如何服务器在同一时间大量数据操作

[复制链接]

3

主题

7

帖子

21

积分

注册会员

Rank: 2

积分
21
发表于 2013-5-6 16:45:16 | 显示全部楼层 |阅读模式
游戏要定时给玩家补充道具,比如说每隔30分钟,或者具体某一时刻,这时可能要对所有玩家操作一次,现在担心这个流程很耗时,有没有好的处理方法,求指导,谢谢

58

主题

1437

帖子

2207

积分

金牌会员

Rank: 6Rank: 6

积分
2207
发表于 2013-5-6 17:53:23 | 显示全部楼层
这个要问主程才行

7

主题

69

帖子

263

积分

中级会员

Rank: 3Rank: 3

积分
263
发表于 2013-5-6 23:04:17 | 显示全部楼层
每间隔一毫秒给一个玩家操作一次。  1000个玩家就是1秒钟完成。 你那个操作没严格到不能有1秒的时间误差吧。

58

主题

1437

帖子

2207

积分

金牌会员

Rank: 6Rank: 6

积分
2207
发表于 2013-5-7 12:39:03 | 显示全部楼层
本帖最后由 gantleman 于 2013-5-7 12:41 编辑
theperfact 发表于 2013-5-6 23:04
每间隔一毫秒给一个玩家操作一次。  1000个玩家就是1秒钟完成。 你那个操作没严格到不能有1秒的时间误差吧 ...

问题在于他每隔30分钟就有一次cpu的高峰期,
如果服务器设计封包都是异步的还好,
服务和客户端要是有必须同步完成的封包,
例如点开菜单,
如果菜单点不开就卡住不能移动这类有关联的操作,
那么一秒钟就会让人无法忍受。
能问出这类问题的,那么说明服务器开发已经处于失控或者接近失控的状态

3

主题

7

帖子

21

积分

注册会员

Rank: 2

积分
21
 楼主| 发表于 2013-5-7 16:54:19 | 显示全部楼层
gantleman 发表于 2013-5-7 12:39
问题在于他每隔30分钟就有一次cpu的高峰期,
如果服务器设计封包都是异步的还好,
服务和客户端要是有必须 ...

失控还没有这么严重,只是想处理得好一点,现在的CPU,每隔30分钟给所有的在线玩家补充金钱,也不会耗费多少时间,只是想优化一下,不要太过紧张

58

主题

1437

帖子

2207

积分

金牌会员

Rank: 6Rank: 6

积分
2207
发表于 2013-5-7 17:45:22 | 显示全部楼层
moon_in_sky 发表于 2013-5-7 16:54
失控还没有这么严重,只是想处理得好一点,现在的CPU,每隔30分钟给所有的在线玩家补充金钱,也不会耗费 ...

我指的失控不是指时间长短,
时间的长短不是问题,
2秒钟也罢,2分钟也罢,如果不需要优化都是不是问题。
如果这东西开始有耦合其他系统倾向,而需要优化哪就是失控的开始。
如果只是闲的蛋痛,为了优化而优化就当我没说好了。

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2013-5-8 13:21:13 | 显示全部楼层
玩家取值的时候给他算不就好了....,服务器有必要定时都刷新么?

3

主题

7

帖子

21

积分

注册会员

Rank: 2

积分
21
 楼主| 发表于 2013-5-8 14:56:10 | 显示全部楼层
SITT 发表于 2013-5-8 13:21
玩家取值的时候给他算不就好了....,服务器有必要定时都刷新么?

在线的,肯定要给的,怎么会等玩家取值???

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2013-5-8 15:25:56 | 显示全部楼层
让客户端主动查询,查询的时候再返给他补充数量,不要服务器主动刷

4

主题

1111

帖子

1498

积分

金牌会员

Rank: 6Rank: 6

积分
1498
发表于 2013-5-8 15:26:23 | 显示全部楼层
或者使用道具的时候看一下是否需要自动补充
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-2-26 18:53

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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