请教一下QQ消息的消息机制是怎么样的,客户端如何适时获取服务器端的消息?

ryq0000 2008-06-10 10:04:54
请教一下QQ消息的消息机制是怎么样的,客户端如何适时获取服务器端的消息?
...全文
389 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这里还有一个过去一个讨论qq的 http 方式服务的文章:http://webservices.ctocio.com.cn/net/356/9259856.shtml
  • 打赏
  • 举报
回复
随便搜了一个文章可以参考一二:http://bbs.51cto.com/thread-591907-1.html
fuda_1985 2010-04-26
  • 打赏
  • 举报
回复
那个视频我记得我06年看过,并动手自己做了个局域网的聊天的。。
fuda_1985 2010-04-26
  • 打赏
  • 举报
回复
在线的是用的事件回发,如:登陆时,调用一个回发事件,如果好友在在线表中,发给相应的好友触发好友的客户端的相应事件。这些全是没什么难度,主要是远程点对点,突破防火墙是怎么做的不知道怎么弄的。至于离线,说简单点就是有个地方存储了这些信息,然后用户登陆就调用了,数据量会非常大~~~对于QQ来说。


关于聊天的东西你完全可以去msdn的视频下载区找一个关于remoting的讲座,他举的例子就是一个局域网的聊天工具,不过是使用的remotin实现的。
鬼手FixYou 2010-04-26
  • 打赏
  • 举报
回复
研究中
yanlongwuhui 2008-06-12
  • 打赏
  • 举报
回复
有时候QQ上的好友在线状态刷新的不及时,估计是登录的时候每个QQ会记录在线状态,离开,退出等操作时会修改状态,这样QQ登录时就能直接从数据库中读取你好友的在线状态了。异常退出的QQ的在线状态可能就一段时间内没有及时刷新(配合一些异常控制和处理,可以让服务器判断出在线的QQ异常退出,对这些QQ的在线状态可以进行修改)
清晨曦月 元老 2008-06-12
  • 打赏
  • 举报
回复
估摸着,应该先是从所有客户A中查询(好像叫所谓的发送心跳消息,断线的就会在预定时间内无回复)谁还活着,得到表B也许是直接更新表A中的某个标志然后定期回收死亡客户端所占资源,鬼知道呢,需要发送消息时向B里每一个发一个命令,这样所有没死的都得到消息了。不过总感觉登录时那个好像赖皮点,似乎是客户端直接请求某个应答,从中得到应该读取的图片啦,文字啦,动画啦等等,这样做似乎是可以减轻主服务器的压力……鬼知道呢
ryq0000 2008-06-10
  • 打赏
  • 举报
回复
都没人知道一些信息?
Jash_Qi 2008-06-10
  • 打赏
  • 举报
回复
触发器
shz215713 2008-06-10
  • 打赏
  • 举报
回复
浏览者操作系统的默认语言
Request.ServerVariables.Get ("HTTP_ACCEPT_LANGUAGE")
客户端ip:
Request.ServerVariables.Get ("Remote_Addr");
客户端主机名:
Request.ServerVariables.Get ("Remote_Host");
服务器ip:
Request.ServerVariables.Get ("Local_Addr");
服务器名:
Request.ServerVariables.Get ("Server_Name");
获得用户登陆名
Request.ServerVariables.Get ("LOGON_USER");
害怕飞的鸟 2008-06-10
  • 打赏
  • 举报
回复
没有研究过QQ的协议

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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