淺談Web服務的個人網頁資源管理組件設計
出處:肖化昆,湯力穎 發(fā)布于:2011-08-31 09:48:26
1 方案的提出
在互聯(lián)網時代,人們通過Internet收集存儲一些個人需要的網頁,供日后查閱。簡單的辦法是使用IE或Netscape的“另存為”功能,把這些網頁保存在個人計算機的文件夾中。近年來,也出現了一些好的工具幫助收集整理網頁。例如,利用軟件“網海拾貝”可以將網頁收藏到本地數據庫中,軟件“Webzip”可以將網站鏡像打包到一個zip文件中。使用這些工具軟件能方便地搜集所需的網頁資源,但問題是,若無備份,則無法在其他的機器上看到這些網頁。但它的缺點是,當收藏的URL不能夠被訪問時(如該網頁被所鏈接的網站刪除),也就無法訪問該網頁了,并且無法直接對所收集的網頁進行管理。
本文提出的新方案是,借用Web服務器的個人存儲空間,存儲和管理個人網頁。其思路是:開發(fā)一個基于Web服務的組件(稱為Url_Tool組件),Url_Tool組件布署和運行在Web服務器端。用戶經注冊成為Url_Tool的客戶后,就能通過Internet使用Url_Tool的功能,將感興趣網頁的URL提交到Web服務器,由Url_Tool組件自動完成網頁并保存在該Web服務器。WEB服務器也稱為WWW(WORLD WIDE WEB)服務器,主要功能是提供網上信息瀏覽服務。 WWW 是 Internet 的多媒體信息查詢工具,是 Internet 上近年才發(fā)展起來的服務,也是發(fā)展快和目前用的廣泛的服務。正是因為有了WWW工具,才使得近年來 Internet 迅速發(fā)展,且用戶數量飛速增長。
這是一種新的網絡資源搜集和網上資源共享方式。網站經營者還可以對用戶存儲的網頁作進一步的“數據挖掘”。這些數據被轉化成有商業(yè)價值的信息,網站籍此掌握網民的消費熱點和消費需求,并向網民提供個性化服務。
2 組件設計
2.1 組件結構
Url_Tool組件分成客戶端和服務器端2部分。
服務器端又由3個基本功能模塊構成:
Url_Tool客戶端的基本功能是:向Url_Tool組件提交用戶信息和需要存儲的網頁地址;使用Url_Tool界面管理個人網頁空間。
Url_Tool服務器端的基本功能是:驗證用戶信息,接受客戶端網頁的請求,并把這些請求輸入到Url數據庫;在網絡空閑時,自動HTML/XML網頁,建立和維護個人網頁存儲空間;向用戶提供管理Web網頁操作界面,實現對個人網頁的自主管理。
Url_Tool組件的結構示意圖如圖1所示。

2.2 通信協(xié)議
通過通信信道和設備互連起來的多個不同地理位置的數據通信系統(tǒng),要使其能協(xié)同工作實現信息交換和資源共享,它們之間必須具有共同的語言。交流什么、怎樣交流及何時交流,都必須遵循某種互相都能接受的規(guī)則。這個規(guī)則就是通信協(xié)議。通信協(xié)議是指雙方實體完成通信或服務所必須遵循的規(guī)則和約定。協(xié)議定義了數據單元使用的格式,信息單元應該包含的信息與含義,連接方式,信息發(fā)送和接收的時序,從而確保網絡中數據順利地傳送到確定的地方。通信協(xié)議在計算機通信中,通信協(xié)議用于實現計算機與網絡連接之間的標準,網絡如果沒有統(tǒng)一的通信協(xié)議,電腦之間的信息傳遞就無法識別。 通信協(xié)議是指通信各方事前約定的通信規(guī)則,可以簡單地理解為各計算機之間進行相互會話所使用的共同語言。兩臺計算機在進行通信時,必須使用的通信協(xié)議 。
Url_Tool組件的服務器端和客戶端的交互是基于TCP/IP Socket編程的,消息格式基于HTML/XML。為此,定義了一個新的協(xié)議集,即Url-Summit交互指令。Url-Summit指令主要是為了解決客戶端程序和URL存儲服務器的交互問題。Url-Summit協(xié)議集的具體內容包括Url-Tool服務端向客戶端發(fā)送的內容和Url-Tool客戶端向服務端發(fā)送的請求,分別如表1和表2所示。


以下是Url-Summit協(xié)議集的一個實例。其中S表示服務端,C表示客戶端。用戶名是“jack”,密碼是“mypassword”。
S:100 Hello
S:101 User
C:jack
S:102 Password
C:mypassword
S:202 OK
登錄成功
C:211 http://www.google.com/
S:202 Add Ok
添加成功
C:300 logout
S:301 bye
離開
2.3 數據庫設計
Url_Tool在服務器端建立名為Url_D的數據庫,Url_D的數據庫主要包含2個數據庫表,分別是用戶信息表KUser和用戶任務表KTask。其數據結構分別如表3和表4所示。用戶任務表保存用戶存儲的個人網頁Url地址及其狀態(tài)。

Url_Tool用戶管理個人網頁的SQL語句如下例。
SELECT uID FROM KUser WHERE name=′用戶名′
AND password=′密碼′;//驗證用戶登錄,
//返回記錄數為1,就可以登錄;反之,拒絕登錄
SELECT link FROM KTask WHERE started=0
ORDER BY tID LIMIT 0,1;//獲取任務,每次
//獲取一個任務,即需要的頁面的URL
UPDATE KTask SET started=1 WHERE tID=′任務ID′;//啟動任務
UPDATE KTask SET finished=1
WHERE tID=′任務ID′;//完成任務
2.4 URL存儲服務器設計
統(tǒng)一資源定位符(URL,英語 Uniform / Universal Resource Locator 的縮寫)也被稱為網頁地址,是因特網上標準的資源的地址(Address)。它初是由蒂姆·伯納斯-李發(fā)明用來作為萬維網的地址的。現在它已經被萬維網聯(lián)盟編制為因特網標準RFC1738了。Internet上的每一個網頁都具有一個的名稱標識,通常稱之為URL地址,這種地址可以是本地磁盤,也可以是局域網上的某一臺計算機,更多的是Internet上的站點。簡單地說,URL就是Web地址,俗稱“網址”。URI 方案集,包含如何訪問 Internet 上的資源的明確指令。
URL的存儲檢索效率是在Internet上構建分布式信息搜集系統(tǒng)的關鍵,其是支持多用戶并行訪問。Url_Tool組件的存儲服務器結構如圖2所示。

Url_Tool組件的存儲服務器程序流程如圖3所示。

一般的TCP/IP偵聽服務器要同時支持多個用戶,主要通過以下幾種形式支持并行服務。
?。?)單進程結合I/O多路復用模式,通過定時輪流查詢資源集合,實現多用戶連接。(2)多進程模式(multi-fork):一個子進程對應于一個客戶端程序,跟客戶端程序交互。(3)多線程模式(multi-thread):一個線程對應于一個客戶端程序。
Url_Tool系統(tǒng)采用多線程的并行模式管理多用戶交互,多線程能夠提升系統(tǒng)性能,降低資源消耗。其原理是同時預先建立多個線程等待提供服務,當有需求出現時,預先建立的線程就可以立即滿足需求,提供服務。
2.5 自動程序設計
2.5.1 程序結構
主要包括以下模塊。
downop:模塊
hashop:哈希表操作模塊
curlop:curl操作模塊
html_parse:html解釋器模塊
url_parse:url解釋模塊
其中,hashop和html_parse模塊是把頁面的相關元素(如圖片、flash等)記錄下來,然后進行。
Url_Tool組件的自動程序結構如圖4所示。

2.5.2 程序流程
Url_Tool組件的自動程序處理流程如圖5所示。

2.5.3 程序說明
如圖5所示,downop先取得的URL和存放地址;進行初始化工作,調用hashop_init( )建立一個hash表。
Curlop_text_tobuff模塊根據hash表的內容將有關頁面緩存到buf。注意curlop_text_tobuff(&url,&len)中的URL可以改變,目的是取得終的URL地址。len是緩存的長度。緩存由curlop_text_tobuff動態(tài)分配。
hashop_set_base_url(url)用于設定基礎的URL。把終有效的URL設定作為基礎地址。因為有些html文檔可能會使用相對地址,所以必須設置正確的基礎地址,才可以。
generate_list(buf,len)調用html_parse解釋頁面,然后把需要的連接放入hash表。
download_list( )主要是調用curlophash表的內容。
Change_html_link( )調用html_parse把buf儲存的html/XML連接轉為本地連接,然后保存html/XML頁面。
3 組件安裝和運行
Url_Tool被封裝成為一個Web服務組件,通過Web網站向用戶提供網頁暫存服務。由于該系統(tǒng)采用基于TCP/IP協(xié)議的XML消息格式實現用戶和服務器的交互,所以,Internet上的任何用戶都可以通過瀏覽器軟件注冊和使用該系統(tǒng)。用戶注冊后,該組件的客戶端自動到客戶機并自動完成安裝和注冊,供用戶使用。IP是英文Internet Protocol(網絡之間互連的協(xié)議)的縮寫,中文簡稱為“網協(xié)”,也就是為計算機網絡相互連接進行通信而設計的協(xié)議。在因特網中,它是能使連接到網上的所有計算機網絡實現相互通信的一套規(guī)則,規(guī)定了計算機在因特網上進行通信時應當遵守的規(guī)則。任何廠家生產的計算機系統(tǒng),只要遵守 IP協(xié)議就可以與因特網互連互通。IP地址具有性,根據用戶性質的不同,可以分為5類。另外,IP還有進入防護,知識產權,指針寄存器等含義。
版權與免責聲明
凡本網注明“出處:維庫電子市場網”的所有作品,版權均屬于維庫電子市場網,轉載請必須注明維庫電子市場網,http://m.58mhw.cn,違反者本網將追究相關法律責任。
本網轉載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網贊同其觀點或證實其內容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網站或個人從本網轉載時,必須保留本網注明的作品出處,并自負版權等法律責任。
如涉及作品內容、版權等問題,請在作品發(fā)表之日起一周內與本網聯(lián)系,否則視為放棄相關權利。
- 工業(yè)5G技術在智能制造中的應用與實踐解析2025/12/31 10:57:21
- 工業(yè)以太網交換機選型與現場應用技術指南2025/12/18 10:48:14
- 無線傳輸電路基礎,射頻前端設計、天線匹配與鏈路預算計算2025/10/27 13:55:50
- ASK 解調的核心要點與實現方式2025/9/5 16:46:17
- 雙偶極子天線:結構、特性與應用全解析2025/9/3 10:29:21









