求一个网游中排队系统的思路

wangxkww 2011-06-15 12:58:21
小弟现在想试着实现一个类似于网游中的排队系统,当同一时间有很多客户端连接服务器时会进行排队
想知道其大概实现思路,先谢谢大家了……
...全文
356 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangxkww 2011-06-16
  • 打赏
  • 举报
回复
谢谢大家 基本有点眉目了 正好有两台服务器能让我玩玩 我去实践下 结贴了
热爱生活 2011-06-15
  • 打赏
  • 举报
回复
服务器负载最大量
OwenYang_cn 2011-06-15
  • 打赏
  • 举报
回复
说个本人思路吧,没做过,LZ 参考:

服务端要求可以:
1.查询服务器允许的最大连接数
2.当前服务器已有连接数
3.服务器负载最大量
4.服务器已有负载
5.服务器管理排队列表,当列表中有人时,考虑是否可以接入一个新玩家,可以则接入,
不可以侧保持连接继续等待!

6.通过以上功能可以看出 服务器 是否可以接入一个新玩家,
如果资源已经消耗完了,那么就保持客户端的连接,让其等待其他玩家退出后介入。
如果已经有人在等了,那么直接在上一个人后面排队,也就是 存放到排队的列表里。

7.在用于保持连接的量也达到最大值前,通知客户端 稍后载试!



好了,希望可以帮到你哦!
smwhotjay 2011-06-15
  • 打赏
  • 举报
回复
当同一时间有很多客户端连接服务器时会进行排队。。是不需要的..只要系统tcp协议栈有足够的资源,就会分配个连接给客户。即使你没accept,系统已经和他建立好tcp连接了,所以.只要accept就行了.当然大量连接,客户偶尔会出现连不上的情况,多试就好了.
dfasri 2011-06-15
  • 打赏
  • 举报
回复
网游服务器是一个服务器群组来的, 登录, 地图, 物品, 人物状态等等的服务器一堆的. 登录里面专门做登录的, 还有什么排队不排队的...一个个接着验证就是了
yynetsdk 2011-06-15
  • 打赏
  • 举报
回复
gateSvr->loginSvr

排队都是在gatesvr上,减少loginsvr负载

gatesvr是个负载均衡服务

以上本人拙见!!
yynetsdk 2011-06-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 smwhotjay 的回复:]
当同一时间有很多客户端连接服务器时会进行排队。。是不需要的..只要系统tcp协议栈有足够的资源,就会分配个连接给客户。即使你没accept,系统已经和他建立好tcp连接了,所以.只要accept就行了.当然大量连接,客户偶尔会出现连不上的情况,多试就好了.
[/Quote]

线上产品,注重用户体验。大规模并发的时候,没有负责分配,导致1次2次,连不上,对用户伤害很大。做排队系统,是给用户一个友好的交互。
smwhotjay 2011-06-15
  • 打赏
  • 举报
回复
我前几天测了下自己的iocp最大并发连接数. 结果上了1w. 每秒客户发送1KB给服务器.服务器echo返回给客户. 总io流量19M/S 本机测试

18,363

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧