国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ASP+MSSQL的多用戶網(wǎng)站訪問統(tǒng)計系統(tǒng)的設(shè)計與實現(xiàn)

2012-04-29 05:47:22孫鐵軍
電腦知識與技術(shù) 2012年20期
關(guān)鍵詞:網(wǎng)站多用戶

孫鐵軍

摘要:網(wǎng)站的運營管理者需要了解網(wǎng)站的流量信息,以便制定以后的網(wǎng)站發(fā)展策略。該文以作者開發(fā)的且正在使用的網(wǎng)站訪問統(tǒng)計系統(tǒng)為例,介紹該網(wǎng)站訪問統(tǒng)計系統(tǒng)的基本設(shè)計過程及實現(xiàn)方法。該系統(tǒng)采用ASP+MSSQL2000技術(shù)實現(xiàn),能夠自動實時記錄和統(tǒng)計網(wǎng)站訪問者的訪問情況,系統(tǒng)的管理者可以查看網(wǎng)站實時的網(wǎng)站訪問統(tǒng)計信息。

關(guān)鍵詞:ASP;MSSQLSERVER;多用戶;網(wǎng)站;訪問統(tǒng)計

中圖分類號:TP312文獻標(biāo)識碼:A文章編號:1009-3044(2012)20-4885-04

Access to Statistical Systems Design and Implementation of ASP + MSSQL Based Multi-User Site

SUN Tie-jun

(Anyang Institute of Technology, Anyang 455000,China)

Abstract: The site operations managers need to understand website traffic information, in order to develop the site development strategy. This article developed by the authors and are using the Web site access statistics system, for example, access to the statistical system design process and the realization method of introducing the site. The system uses ASP + MSSQL2000, technology that can automatically re al-time records and statistics website visitors access, the system administrator can view the site real-time site access statistics.

Key words: ASP; the MSSQLSERVER; multi-user; site; Access Statistics

實時掌握自己網(wǎng)站的訪問統(tǒng)計信息對一個網(wǎng)站的運營管理者來說重要性是不言而喻的,網(wǎng)站訪問統(tǒng)計系統(tǒng)可以讓運營管理者即時了解當(dāng)前網(wǎng)站的訪問統(tǒng)計狀況,如訪問量統(tǒng)計分析、訪問者來路統(tǒng)計、搜索引擎統(tǒng)計、搜索關(guān)鍵詞統(tǒng)計、訪問者地區(qū)分布等等。通過對網(wǎng)站全面的流量統(tǒng)計數(shù)據(jù)分析,從而指導(dǎo)網(wǎng)站網(wǎng)站的運營管理者制定網(wǎng)站下一步的協(xié)規(guī)劃發(fā)展方向。

對于一套網(wǎng)站訪問統(tǒng)計系統(tǒng)來說,所使用的開發(fā)語言決定了它的執(zhí)行效率,而統(tǒng)計系統(tǒng)的核心是對訪問數(shù)據(jù)的存儲與分析,開發(fā)語言我選擇了ASP語言,數(shù)據(jù)庫我選擇了功能強大的MS SQL Server 2000作為數(shù)據(jù)存儲的載體。

ASP是Active Server Page的縮寫,意為“動態(tài)服務(wù)器頁面”。是現(xiàn)在網(wǎng)絡(luò)上一種應(yīng)用比較廣泛的服務(wù)器端腳本編寫環(huán)境,可以用來創(chuàng)建和運行動態(tài)網(wǎng)頁或Web應(yīng)用程序并能方便的連接ACCESS與MSSQL數(shù)據(jù)庫。

MS SQL Server 2000是Microsoft公司推出的功能強大、完整的關(guān)系型數(shù)據(jù)庫系統(tǒng),它以其內(nèi)置的數(shù)據(jù)復(fù)制功能、強大的管理工具、與Internet的緊密集成和開放的系統(tǒng)結(jié)構(gòu)為廣大的用戶、開發(fā)人員和系統(tǒng)集成商提供了一個出眾的數(shù)據(jù)庫平臺,它提供了數(shù)據(jù)完整性、安全性、事務(wù)處理、網(wǎng)絡(luò)多用戶處理等必備的功能。

<b> 1系統(tǒng)設(shè)計</b>

1.1系統(tǒng)功能設(shè)計

根據(jù)網(wǎng)站訪問統(tǒng)計的工作要求,網(wǎng)站訪問統(tǒng)計系統(tǒng)就具有以下功能:

1)能實現(xiàn)網(wǎng)站訪問信息(如訪問時間,訪問者IP,訪問者所在地區(qū),所訪問的頁面等)的自動記錄。

2)用戶是通過何種途徑來到網(wǎng)站的,訪問了哪些頁面、并在網(wǎng)站上停留了多長時間,以及客戶端信息(如使用的操作系統(tǒng)、瀏覽器類型,屏幕大小,訪問本站的次數(shù)等)進行分類匯總。

3)能夠根據(jù)統(tǒng)計數(shù)據(jù),自動生成各種統(tǒng)計報表。

4)能進行訪問量的查詢、統(tǒng)計、分析,并且以表格或圖形方式進行輸出。

1.2系統(tǒng)的總體結(jié)構(gòu)

如圖1所示,用戶訪問網(wǎng)站,統(tǒng)計系統(tǒng)自動記錄,把基本信息整理后寫人數(shù)據(jù)庫。統(tǒng)計系統(tǒng)根據(jù)網(wǎng)站報表查看者的需要展示各種統(tǒng)計報表。

1.3數(shù)據(jù)庫設(shè)計

數(shù)據(jù)庫是統(tǒng)計系統(tǒng)的核心和支柱。數(shù)據(jù)庫結(jié)構(gòu)的合理性及優(yōu)劣將直接影響整個應(yīng)用系統(tǒng)的開發(fā)工作。在綜合了各種統(tǒng)計的基本要求后,數(shù)據(jù)庫主要表結(jié)構(gòu)設(shè)計如下(限于篇幅,只列出第一張表的表結(jié)構(gòu)信息)。1)在線用戶表(Online),該表主要記錄當(dāng)前在線用戶的信息。表結(jié)構(gòu)如下表1:

2)用戶訪問明細表(LastUser),該表以時間訪問先后順序記錄來訪用戶的一些基本信息,如來訪時間、來訪者IP、IP所屬地區(qū)、所進入的頁面、來路、來訪時間等。表結(jié)構(gòu)如下:

3)訪問量表(Visits),該表以小時為時間段,記錄每小時內(nèi)網(wǎng)站的訪問量(IP)和瀏覽量(PV)。

4)客戶端信息表(Client),該表記錄客戶端的一些信息,如所使用的操作系統(tǒng)、瀏覽器、屏幕大小、所在地區(qū)等。

5)關(guān)鍵詞表(Kword),該表記錄用戶通過搜索引擎搜索什么內(nèi)容后訪問到被統(tǒng)計網(wǎng)站的。

6)來路表(EngineCome),該表記錄用戶通過什么網(wǎng)站來到被統(tǒng)計網(wǎng)站的。

7)被統(tǒng)計網(wǎng)站頁面表(Sitepage),該表記錄被統(tǒng)計網(wǎng)站一天內(nèi)被訪問瀏覽了哪些頁面以及每個頁面訪問瀏覽的次數(shù)和時間等信息。

8)防刷新IP列表表(TodayIP),該表只記錄一天內(nèi)訪問過被統(tǒng)計網(wǎng)站的IP,且在每天0時以后自動清空。以保證一個IP一天內(nèi)的多次訪問只記錄一個訪問量(IP)和多個瀏覽量(PV)。

<b> 2系統(tǒng)的實現(xiàn)</b>

2.1嵌入統(tǒng)計代碼

要想對被統(tǒng)計網(wǎng)站進行統(tǒng)計,需要在每個被統(tǒng)計的頁面嵌入以下統(tǒng)計代碼,<script src="/stat/mystat.aspsiteid=1"></script>,這樣,當(dāng)用戶訪問被統(tǒng)計網(wǎng)站的頁面時嵌入的代碼就會被執(zhí)行,從而觸發(fā)向服務(wù)器端提交相關(guān)信息。

mystat.asp文件中向服務(wù)器端提交信息的Javascript代碼片段如下:

……

‘以下代碼將獲取的客戶站相差信息提交到服務(wù)器進行處理

+ stat.aspstyle= + stat_style+ &siteid= + stat_siteid

+ &tzone= + stat_tzone

+ &tcolor= + stat_tcolor

+ &sSize= + stat_sSize

+ &referrer= + stat_referrer+ ></script>;

document.write(stat_outstr);

……

‘以下代碼將定時向服務(wù)器端發(fā)送訪問者的在線狀態(tài)信息

function statimgon(reftime){

var ttime=new Date();

var stat_img=new Image();

stat_img.src=stat_url+stat_online.aspsiteid=+stat_siteid+&u=+stat_referrer+&o=+ttime.getDate+ttime.getMinutes +ttime.getSec onds;

var statimgtimeout=setTimeout(statimgon(+reftime+);,reftime);

}

statimgon(<%=CFG_CheckOnlineS*1000%>);

2.2獲取用戶的訪問信息

在ASP中主要通過Request對象獲取客戶端信息的,Request內(nèi)置對象中的ServerVariables屬性,用于獲取HTTP表頭中的信息,HTTP頭中包含了一些如訪問者IP、UserAgent等信息在客戶端無法獲取的信息。

2.3處理獲取到的數(shù)據(jù)

對獲取的數(shù)據(jù)進行整理并進行分類存儲是網(wǎng)站訪問統(tǒng)計系統(tǒng)的核心功能,數(shù)據(jù)處理的優(yōu)劣及數(shù)據(jù)保存到數(shù)據(jù)庫所需要的時間直接影響到整個統(tǒng)計系統(tǒng)的性能,所以,在數(shù)據(jù)數(shù)據(jù)處理時在保證正確處理的同時盡量做到代碼精簡,在數(shù)據(jù)存儲時充分利用SQLSERVER批處理事務(wù)的功能,將保存數(shù)據(jù)的代碼做過存儲過程里,以盡可能快的速度完成數(shù)據(jù)的保存工作。

以下是數(shù)據(jù)處理及保存的核心代碼片段:

……

服務(wù)器當(dāng)前時間

truenow= now()

today0hour=datevalue(now())

是否新的一天isNewDay = false

if DateValue(Site_TodayDate) < DateValue(now()) then isNewDay=true 是否新的一天

新的一天

if isnewday then

執(zhí)行新的一天的處理過程

為流量庫添加當(dāng)天的所有行

for i= 0 to 23

conn.execute ("insert into [View] (Site_id,V_DTime,V_View,V_IP) Values("&Siteid&","&dateadd("h",i,today0hour)&",0,0)")

next

更新SITE表的最后日期

conn.Execute ("update Site set S_TodayDate = "&today0hour&" where Site_Id=" & SiteID) end if

是否刷新

isRe = 0

set rs = conn.Execute("select Site_Id from todayip where UserIP="&vIP&" and Site_Id=" & SiteID)

if not rs.eof then isRe=1 如果IP已經(jīng)存在于保存的列表中,是刷新

rs.close

set rs=nothing

if isre=0 then conn.Execute("insert into todayip (Site_ID,UserIP) values ("&SiteID&","&vIP&")") 寫入當(dāng)前IP到刷新判定IP表

……

if isre=0 then

conn.Execute("SaveContent"&vos&","&vColor&","&vUser&","&vArea&","&vIP&","&vAgent&","&vPage&","&vKeyw&","&vCome&"," &SiteID&","&truenow&","&nowHour&"")

else

conn.Execute("SavePage "&vIP&","&vpage&"," &SiteID&","&truenow&","&nowHour&"")頁面瀏覽量

end If

conn.Execute("SaveTrack "&vIP&","&vpage&"," &SiteID&","&truenow&","&Site_SaveDays&"")瀏覽軌跡

……

2.4報表數(shù)據(jù)顯示輸出

統(tǒng)計報表顯示輸出是網(wǎng)站訪問統(tǒng)計系統(tǒng)最基本的功能,沒有輸出的網(wǎng)站訪問統(tǒng)計是不完整的。

本統(tǒng)計系統(tǒng)能輸出以下統(tǒng)計報表:

1)統(tǒng)計系統(tǒng)概況頁面

該頁面以表格形式輸出統(tǒng)計統(tǒng)計的流量基本信息,包括總訪問量、今日流量、昨日此時流量、昨日流量、本月流量、本年流量、最高流量及發(fā)生的日期、最低流量在發(fā)生的日期、當(dāng)前在線人數(shù)、最高在線人數(shù)及發(fā)生的時間等信息。效果如圖2。

(代碼從略)

2)在線用戶頁面

該頁面顯示了當(dāng)前正在瀏覽被統(tǒng)計網(wǎng)站的訪問者的相關(guān)信息,包括訪問者IP、訪問者所在地區(qū)、首次打開被統(tǒng)計網(wǎng)站的時間、停留的時間、以及所在頁面等信息。

3)訪問明細頁面

該頁面顯示了從當(dāng)天的0時起訪問被統(tǒng)計網(wǎng)站的訪問者相關(guān)信息,包括包括訪問者IP、訪問者所在地區(qū)、打開被統(tǒng)計網(wǎng)站的時間、通過什么網(wǎng)站進入被統(tǒng)計網(wǎng)站的、進入被統(tǒng)計網(wǎng)站的頁面、搜索的關(guān)鍵詞等信息。

4)搜索引擎分析頁面

該頁面以圖形方面顯示了通過常用搜索引擎來到被統(tǒng)計網(wǎng)站的各搜索引擎分布情況,效果如下圖3所示。

圖3

其他報表還包括關(guān)鍵詞分析、來路分析、入口網(wǎng)址分析、頁面瀏覽分析、日段分析、時段分析、周月段分析、客戶端瀏覽器操作系統(tǒng)分析等等不在一一贅述。

<b> 3結(jié)束語</b>

本網(wǎng)站訪問統(tǒng)計系統(tǒng)可以自動對網(wǎng)站的訪問者信息進行記錄,并能根據(jù)管理員的要求按時間和類別分別統(tǒng)計并顯示結(jié)果,根據(jù)系統(tǒng)自動記錄的結(jié)果可以對網(wǎng)站的訪問信息進行分析、總結(jié),從而指導(dǎo)網(wǎng)站的規(guī)劃和建設(shè)工作。目前程序運行良好,在每天10萬以上的訪問量的情況下能夠完全穩(wěn)定運行,且系統(tǒng)占用CPU資源非常小。

參考文獻:

[1]臺雯.基于ASP.NET實現(xiàn)網(wǎng)站訪問統(tǒng)計功能[J].天津職業(yè)院校聯(lián)合學(xué)報,2008(5).

[2]袁通路,孫彩萍,林海,曹俊霞.科技信息網(wǎng)站訪問統(tǒng)計系統(tǒng)的設(shè)計與實現(xiàn)[J].西安石油大學(xué)學(xué)報:自然科學(xué)版,2005(5).

[3]潘家富.圖書館網(wǎng)站電子資源訪問量統(tǒng)計的簡單實現(xiàn)方法[J].情報探索,2006(9).

猜你喜歡
網(wǎng)站多用戶
安泰科多用戶報告訂閱單
安泰科多用戶報告訂閱單
安泰科多用戶報告訂閱單
安泰科多用戶報告訂閱單
河洛文化旅游資源外宣網(wǎng)站日譯現(xiàn)狀調(diào)查及對策研究
文管綜合實踐教學(xué)中心網(wǎng)站建設(shè)與維護
淺析企業(yè)建立網(wǎng)站VI系統(tǒng)的必要性探討
提升高校網(wǎng)站在學(xué)校發(fā)展中的作用
固镇县| 文安县| 黄山市| 福州市| 道真| 老河口市| 青州市| 宝应县| 志丹县| 菏泽市| 西充县| 深州市| 沂水县| 射洪县| 泾川县| 金秀| 衢州市| 醴陵市| 胶州市| 彭州市| 遂宁市| 湖南省| 铁岭市| 平泉县| 敦煌市| 靖西县| 临沂市| 浦东新区| 乌兰察布市| 衡东县| 新河县| 绥德县| 东阿县| 轮台县| 汶上县| 通辽市| 贺州市| 库车县| 武强县| 卢龙县| 斗六市|