动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   PHP → 阅读文章

 聊天室处理异常离线的方法

作者来源: 
阅读 3206 人次 , 2000-11-18 

某些网友由于线路掉线,死机等 原因,不能通过正常的途径离开聊天室,造成在线人数不能正常显示!解决的方法一般为

1 建立在线 人数文件,里面保存在线人的id/pass/time 其中time 为最后的更新时间
2 聊天程序正常运行时每隔一段 时间更新自己的 id/pass/time 通知系统自己在线,一般可以为1-2分钟
3 系统每格一段时间扫描一次在线 人名单,查找那些已经超过规定时间(比如5分钟)没有更新的id,确认为已经异常离线
4 在线人数为文件 里的行数,名单为行数据

我的现在提供下载的聊天室就是采用这种方法实现的!

这种方法流 程比较简单,但在人多时的文件共享问题成为关键,本人通过实践,发现一种消耗系统资源非常少,能很好解 决共享的方法!

具体思路如下:

1 建立一个 useronline 子目录存放在线人员数据
2 每 个进入的人在里面建立一个以用户名为文件名的文件。内容为空!
3 聊天程序正常运行时,每隔一段时间 更新自己的子目录里的文件
4 系统根据目录里文件更新的时间判断用户数否离线
5 在线人数为目录里 的文件数,名单为文件名

优点:每个人之更新自己的文件,不影响其他人,不存在共享问题!

由于可以每隔5分钟扫描一次,故消耗资源很少!

在我的新版聊天室中将采用这种技术!!!

原作者:php2000
来源:中国PHP联盟

  

 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:让Dreamweaver 3.0 识别.php3 扩展名的文件
· 下一篇:php生成WAP页面
· 用PHP处理多个同名复选框
· 水火也相容!巧妙在IIS中配置PHP调试环境
· 虚拟主机中对PHP的特殊设置
· PHP入门
· 网络资源


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077