游戏开发论坛

 找回密码
 立即注册
搜索
查看: 8929|回复: 14

网络游戏服务器是否可以采用IOCP+单线程设计??

[复制链接]

50

主题

236

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
发表于 2012-1-25 14:32:00 | 显示全部楼层 |阅读模式
因为IOCP通过使用重叠IO模型不会有任何阻塞,而我觉得游戏逻辑的处理也不是性能瓶颈。
有经验的朋友都来讨论下。

参考文章:
http://www.cnblogs.com/rubylouvre/archive/2011/12/14/2288226.html

1万

主题

1万

帖子

2万

积分

管理员

中级会员

Rank: 9Rank: 9Rank: 9

积分
20515
发表于 2012-1-25 15:41:00 | 显示全部楼层

Re:网络游戏服务器是否可以采用IOCP+单线程设计??

这里说的网游服务器应该是指逻辑运算部分把,逻辑单线程一般来说足够了。

50

主题

236

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
 楼主| 发表于 2012-1-25 15:46:00 | 显示全部楼层

Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

sea_bug: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

这里说的网游服务器应该是指逻辑运算部分把,逻辑单线程一般来说足够了。


都包括(Accept、Receive、Send)
然后和游戏逻辑处理全部放在同一进程,同一主线程里。

58

主题

1437

帖子

2207

积分

金牌会员

Rank: 6Rank: 6

积分
2207
发表于 2012-1-25 19:10:00 | 显示全部楼层

Re:网络游戏服务器是否可以采用IOCP+单线程设计??

这个看游戏本身的复杂度,
单次单人的游戏逻辑计算能否在界定的时间内完成,
其间是否有和慢速io的交互,是否有需要延时等待的逻辑判断。

50

主题

236

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
 楼主| 发表于 2012-1-27 19:28:00 | 显示全部楼层

Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

gantleman: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

这个看游戏本身的复杂度,
单次单人的游戏逻辑计算能否在界定的时间内完成,
其间是否有和慢速io的交互,是否有需要延时等待的逻辑判断。



我所谓的网络游戏主要指的是mmorpg

58

主题

1437

帖子

2207

积分

金牌会员

Rank: 6Rank: 6

积分
2207
发表于 2012-1-27 21:59:00 | 显示全部楼层

Re: Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

5个人也可以mmorpg,一个线程足够。
3千个人只在地图上跑跑,聊天,不战斗也没问题。
看你游戏内容需要的交互程度和数据处理量。
微无渊: Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计??
我所谓的网络游戏主要指的是mmorpg

50

主题

236

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
 楼主| 发表于 2012-1-28 13:11:00 | 显示全部楼层

Re: Re: Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计

gantleman: Re: Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

5个人也可以mmorpg,一个线程足够。
3千个人只在地图上跑跑,聊天,不战斗也没问题。
看你游戏内容需要的交互程度和数据处理量。


好吧,就拿魔兽世界这种需求来看待吧。他是标准。我不是要找特例。

58

主题

1437

帖子

2207

积分

金牌会员

Rank: 6Rank: 6

积分
2207
发表于 2012-1-28 17:35:00 | 显示全部楼层

Re:网络游戏服务器是否可以采用IOCP+单线程设计??

魔兽是非开源软件怎么实现不清楚。
mangos魔兽的模拟器是开源的单线程,2个人战斗可能都会卡掉线。

50

主题

236

帖子

454

积分

中级会员

Rank: 3Rank: 3

积分
454
 楼主| 发表于 2012-1-28 19:10:00 | 显示全部楼层

Re: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

gantleman: Re:网络游戏服务器是否可以采用IOCP+单线程设计??

魔兽是非开源软件怎么实现不清楚。
mangos魔兽的模拟器是开源的单线程,2个人战斗可能都会卡掉线。


恩。

1

主题

31

帖子

31

积分

注册会员

Rank: 2

积分
31
发表于 2012-1-30 18:37:00 | 显示全部楼层

Re:网络游戏服务器是否可以采用IOCP+单线程设计??

大家可以加这个QQ群:198678750交流学习(美术+程序+策划交流派)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-6-9 11:05

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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