电脑安全

您当前的位置:主页 > 电脑安全 >

PHP如何统计在线人数-网络编程

来源:[db:来源]标题:   在线    编辑:电脑技术全能网 时间:2019-09-22 18:29

原标题:PHP如何统计在线人数-网络编程
   在论坛里有人问我怎样统计在耳目数?我也不晓得甚么是最好的方式。上面是本站的完成的道理,我把它写进去,供各人参考。这只是我的方式,确定不是最好的,还盼望妙手们予以斧正。实在,要真正统计同时在并发在线的人数,是一件不太事实的事,这是由于HTTP协定是种无状况的协定。当客户端向效劳器收回一个恳求时,效劳器会立刻树立一个新的TCP/IP衔接,在该会话停止后,如页面完整载入后,这个衔接就封闭了。个别来讲,在耳目数指的定是在必定时光段内同时拜访站点的人数,而不是基于HTTP协定的并发衔接数。  让咱们先来看看一个访客是怎样拜访一个网站的。他在扫瞄器的地点栏里输出了目的网站的地点,而后在一段时光内连续扫瞄该网站的网页,最初,封闭扫瞄器或输出新的网址――扫瞄停止了。关于效劳器端来讲,访客到来是能够晓得的,访客在扫瞄页面也是能够晓得的,但是怎样晓得甚么时间走的呢?因为HTTP协定是无状况的,以是无奈晓得。平日的做法是记下访客最初一次扫瞄站点页面的时光。假如该访客在一个特定的时光内没有新的举措,那末能够以为他走了。  依据下面的这个思绪,我感到最好用数据库,由于数据库要比其余方式如文本文件的效力要高。上面的例子是应用MySQL的,很轻易应用其余范例的数据库体系。而后,在全部的页面中挪用这个PHP文件,一方面更新数据,另一方面能够表现在线的人数。然而,有一个成绩--究竟在多长时光内拜访的人算是并发的呢?个别来讲,是半个小时,也就是1800秒,详细的要依据网站的情形来断定。这个时光越长,统计出的并发在线的人数就越多。本站的是15分钟,900秒。用拜访者的IP地点表现一个拜访者是个不错的方式。在拨号上彀的情形下,被调配了雷同IP地点的两个用户在短时光内扫瞄统一个网站的几率是很小的。  起首,用MySQL的东西建一个表: CREATE TABLE ccol( id integer not null auto_increment, #记载的ID ip char(15) not null, #拜访者的IP地点 dtstamp datetime not null, #最初拜访时光 uri char(255), #拜访者恳求的URI primary key (id) ); 而后,写一段PHP代码: <? /* 文件:ccol.php - ConCurrent OnLine statistics 目标:统计同时在线扫瞄的人数 作者:Hunte, hunte@phpuser.com 修正:2000-4-25 */ $duration=1800; require "db.php";

上一篇:用于 php-5.2 的 php.ini 中文版-网络编程

下一篇:没有了