亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于P2P和JXTA的選課系統(tǒng)的研究與設(shè)計(jì)

        2009-01-06 04:55:38曾志文

        何 亞 曾志文

        [摘 要]針對(duì)網(wǎng)上選課系統(tǒng)因短期高負(fù)載而導(dǎo)致性能降低甚至崩潰的問題,提出采用P2P技術(shù)將選課的負(fù)載分布在客戶端,提高選課系統(tǒng)的性能。對(duì)基于P2P和JXTA的選課系統(tǒng)做了總體設(shè)計(jì),包括服務(wù)器端、客戶端以及數(shù)據(jù)庫(kù)的設(shè)計(jì)。

        [關(guān)鍵詞]P2P JXTA 選課系統(tǒng)

        [中圖分類號(hào)]TP319[文獻(xiàn)標(biāo)識(shí)碼]A[文章編號(hào)]1007-9416(2009)11-0004-02

        1 前言

        目前大部分高校的選課系統(tǒng)是基于B/S架構(gòu)的,所有的學(xué)生都要從服務(wù)器獲取學(xué)期開課信息以及自己已經(jīng)修過的課程等信息;同時(shí)服務(wù)器要對(duì)每個(gè)學(xué)生選擇的課程進(jìn)行判斷,使得服務(wù)器的負(fù)擔(dān)很重,造成系統(tǒng)響應(yīng)時(shí)間增長(zhǎng),甚至導(dǎo)致系統(tǒng)崩潰。這種短期的高負(fù)載特性,使得選課系統(tǒng)無法進(jìn)行選課,影響選課的正常進(jìn)行。

        基于此,本文設(shè)計(jì)了一種分布式選課系統(tǒng),從當(dāng)前熱門的分布式技術(shù)P2P出發(fā),利用P2P網(wǎng)絡(luò)中,節(jié)點(diǎn)之間可以直接交換資源而不必通過服務(wù)器。在客戶端實(shí)現(xiàn)相同專業(yè)的學(xué)生可以從其他的客戶端共享學(xué)期開課信息。而對(duì)學(xué)生個(gè)人的已修課程、所得學(xué)分學(xué)時(shí)等信息,這些信息是每個(gè)同學(xué)都不一樣的,則從服務(wù)器下載。將對(duì)學(xué)生所選課程的檢測(cè)轉(zhuǎn)移到客戶端處理,減輕服務(wù)器的負(fù)擔(dān)。

        1.1 P2P技術(shù)介紹

        P2P技術(shù),也稱對(duì)等網(wǎng)絡(luò)或點(diǎn)對(duì)點(diǎn)(peer to peer)技術(shù),是一種網(wǎng)絡(luò)結(jié)構(gòu)的思想,是目前國(guó)際計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)領(lǐng)域研究的一個(gè)熱點(diǎn)。它打破了傳統(tǒng)的客戶端/服務(wù)器(C/S)模式,在對(duì)等網(wǎng)絡(luò)中,每個(gè)節(jié)點(diǎn)的地位相同,具備客戶端和服務(wù)器雙重特性,可以同時(shí)作為服務(wù)使用者和服務(wù)提供者,整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)中不存在中心節(jié)點(diǎn)(或中心服務(wù)器)。目前P2P模型可以分為以下幾個(gè)種類:

        (1)純P2P模型:采用隨機(jī)圖的組織方式形成一個(gè)松散的網(wǎng)絡(luò),不依賴任何中心服務(wù)器,網(wǎng)絡(luò)配置簡(jiǎn)單。一旦P2P應(yīng)用程序下載到計(jì)算機(jī)內(nèi)存中,網(wǎng)絡(luò)中的端就動(dòng)態(tài)地發(fā)現(xiàn)其他連接的端,相連端之間的通信完全不需要來自服務(wù)器的任何幫助。純P2P模型存在的問題就是網(wǎng)絡(luò)上的端發(fā)現(xiàn)問題,因?yàn)闆]有一個(gè)中心管理者注冊(cè)登錄到網(wǎng)絡(luò)上的端,所以用戶必須自己定位其他的端。另外,這種網(wǎng)絡(luò)直徑不可控,可擴(kuò)展性差。

        (2)帶有一個(gè)簡(jiǎn)單發(fā)現(xiàn)服務(wù)器的P2P :在這種網(wǎng)絡(luò)中,服務(wù)器僅提供相連端的清單來輔助端,建立連接和通信仍然是端之間的事情。為了查詢某個(gè)文件,計(jì)算機(jī)必須逐個(gè)詢問所有的端,直到找到所需的資源或者返回錯(cuò)誤信息,可見這種網(wǎng)絡(luò)的效率很低。

        (3)帶有發(fā)現(xiàn)和查找服務(wù)器的P2P:這種模型中,服務(wù)器用來提供相連端的清單和它們的可用資源。這種模型減輕了端的負(fù)擔(dān),因?yàn)椴辉傩枰ㄟ^訪問每個(gè)端來查找必要的信息。這種模型中的服務(wù)器初始化兩個(gè)端間的通信,然后這兩個(gè)端建立通信、保持連接并執(zhí)行各種活動(dòng)。

        3 JXTA簡(jiǎn)介

        JXTA技術(shù)是美國(guó)Sun公司針對(duì)原有P2P系統(tǒng)的缺陷而設(shè)計(jì)的一種解決現(xiàn)代P2P分布計(jì)算的網(wǎng)絡(luò)編程和計(jì)算平臺(tái)。該技術(shù)致力于創(chuàng)建一個(gè)通用的平臺(tái),提供P2P程序所需的底層服務(wù)。JXTA技術(shù)的核心在于一套獨(dú)立于編程語言、系統(tǒng)平臺(tái)和網(wǎng)絡(luò)平臺(tái)的協(xié)議集。JXTA由6個(gè)協(xié)議組成,這套協(xié)議集描述和實(shí)現(xiàn)了P2P應(yīng)用最基本的需求,其中的每一個(gè)協(xié)議都可以很容易地實(shí)現(xiàn)和集成到P2P的服務(wù)和應(yīng)用中。使用這些協(xié)議,對(duì)等點(diǎn)可以互相合作建立自我組織、自我管理的對(duì)等組,不必關(guān)心他們?cè)趧偨j(luò)中的位置,并且不需要集中式的管理機(jī)構(gòu)。

        JXTA的體系結(jié)構(gòu)由三層組成:最底層是JXTA核心層,這一層封裝了最根本的東西,包括對(duì)等點(diǎn)、對(duì)等組、Peer發(fā)現(xiàn)、Peer通信、Peer監(jiān)視和相關(guān)的安全原語;服務(wù)層擴(kuò)展了核心層的功能,它包括對(duì)于P2P網(wǎng)絡(luò)不是必需的、但很通用的功能,如查找、共享、索引、代碼緩存和內(nèi)容緩存的機(jī)制;應(yīng)用層包括了應(yīng)用JXTA服務(wù)構(gòu)建出的P2P應(yīng)用程序。

        4 基于P2P和JXTA的選課系統(tǒng)的設(shè)計(jì)

        結(jié)合P2P模型的特點(diǎn),系統(tǒng)中采用帶有發(fā)現(xiàn)和查找服務(wù)器的P2P模型。系統(tǒng)總體結(jié)構(gòu)如圖1所示。其中,虛線代表登錄消息,它是在客戶端和服務(wù)器端之間進(jìn)行;實(shí)線代表選課信息數(shù)據(jù)的請(qǐng)求和傳輸路徑,在客戶端之間或客戶端和服務(wù)器端之間進(jìn)行。如果沒有該專業(yè)在線的客戶端時(shí),服務(wù)器就發(fā)送學(xué)期開課信息和學(xué)生本人的己修課程信息到客戶端;有的話,服務(wù)器就發(fā)送在線節(jié)點(diǎn)的信息和學(xué)生本人的已修課程信息,請(qǐng)求的客戶端根據(jù)在線節(jié)點(diǎn)的信息,從中選擇一個(gè)鄰近的節(jié)點(diǎn),建立連接去共享學(xué)期開課信息。每一個(gè)客戶端既能成為數(shù)據(jù)傳輸服務(wù)器,也能成為數(shù)據(jù)接收客戶端??蛻魴C(jī)從服務(wù)器獲取己登錄的客戶端列表,與鄰近客戶機(jī)建立連接,完成數(shù)據(jù)傳輸,傳輸過程不經(jīng)過目錄服務(wù)器,因此可以大大減少服務(wù)器的工作量。

        4.1 服務(wù)器設(shè)計(jì)

        服務(wù)器端主要的功能包括消息管理,路由表維護(hù),文件管理,教務(wù)管理員和教師模塊。

        4.1.1 消息管理模塊

        負(fù)責(zé)與客戶端的通信,向客戶端發(fā)送或者接收來自客戶端的消息。服務(wù)器接收到的消息有以下幾種:

        (1)登錄消息:消息管理器接收到登錄消息后,調(diào)用路由表管理模塊,更新路由表,并在路由表中查找相同專業(yè)的在線節(jié)點(diǎn)的信息,然后把檢索結(jié)果發(fā)送回客戶端。對(duì)應(yīng)消息的命令是:ListOnlineUserInfo。

        (2)獲取選課信息的請(qǐng)求:當(dāng)客戶端不能在其他在線節(jié)點(diǎn)獲得學(xué)期開課信息時(shí),向服務(wù)器請(qǐng)求獲取學(xué)期開課信息,消息管理器調(diào)用文件管理模塊,根據(jù)學(xué)生所在的專業(yè),根據(jù)客戶端的輸入管道與客戶端建立通信,發(fā)送該專業(yè)的學(xué)期開課信息。對(duì)應(yīng)消息的命令是:GetCourseData。

        (3)接收選課結(jié)果信息:當(dāng)客戶端完成選課后,向服務(wù)器提交選課結(jié)果,消息管理模塊調(diào)用文件管理模塊響應(yīng)請(qǐng)求,并把數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中。對(duì)應(yīng)消息的命令是:PostCourseData。

        (4)注銷:當(dāng)學(xué)生退出選課時(shí),給服務(wù)器發(fā)送注銷的消息,消息管理模塊調(diào)用路由表管理函數(shù)更新路由表,在路由表中刪除該客戶端的信息。

        4.1.2 路由表管理

        為了記錄所有在線節(jié)點(diǎn)的信息,服務(wù)器維護(hù)一張?jiān)诰€客戶端的信息表,當(dāng)有學(xué)生登錄時(shí),記錄客戶端的信息并且查詢相同專業(yè)的在線節(jié)點(diǎn)信息返回給客戶端。當(dāng)學(xué)生退出選課系統(tǒng)時(shí),從路由表中刪除學(xué)生信息。路由表中記錄的節(jié)點(diǎn)信息主要包括學(xué)生學(xué)號(hào)、年級(jí)、專業(yè)、客戶端的IP地址和輸入通道ID。

        4.1.3 文件管理

        服務(wù)器端需要傳輸?shù)男畔▽W(xué)期開課信息和學(xué)生個(gè)人的已修課程信息發(fā)送給客戶端,接收客戶端提交的選課結(jié)果。

        4.1.4 教務(wù)員模塊

        教務(wù)管理員的功能主要是對(duì)學(xué)生、班級(jí)和課程信息進(jìn)行管理及查詢,開課審批,批量選課,選課結(jié)果審核,數(shù)據(jù)庫(kù)備份和發(fā)布公告。

        4.1.5 教師模塊

        教師模塊的功能主要是開課申請(qǐng),查看選課學(xué)生,打印選課學(xué)生和考試成績(jī)管理。

        4.2 客戶端設(shè)計(jì)

        為了減輕服務(wù)器的負(fù)擔(dān),系統(tǒng)將對(duì)每個(gè)學(xué)生所選課程的檢測(cè)轉(zhuǎn)移到客戶端處理,采用Java的Applet方式實(shí)現(xiàn)??蛻舳说墓δ苤饕ㄎ募芾?消息管理和學(xué)生選課三個(gè)模塊。

        4.2.1 文件管理

        和服務(wù)器端類似,文件管理模塊需要實(shí)現(xiàn)XML文件的生成與解析。主要包括將服務(wù)器或者其他節(jié)點(diǎn)傳輸來的學(xué)期開課信息和學(xué)生個(gè)人的已修課程信息進(jìn)行XML文件的解析,將選課結(jié)果生成XML文件提交給服務(wù)器。

        4.2.2 消息管理

        負(fù)責(zé)與其他客戶端和服務(wù)器進(jìn)行通信,向其他端發(fā)送或者接收來自其他端的消息。當(dāng)客戶端啟動(dòng)后,建立一個(gè)輸入管道通告,并監(jiān)聽管道,當(dāng)接收到消息的時(shí)候,就根據(jù)消息中的命令調(diào)用相應(yīng)的應(yīng)答函數(shù),處理完后向其他端發(fā)送響應(yīng)消息??蛻舳私邮盏降南⒂幸韵聨追N:

        (1)接收用戶列表消息:消息管理器接收到服務(wù)器發(fā)送來的在線節(jié)點(diǎn)信息,從中選擇一個(gè)鄰近的節(jié)點(diǎn),建立連接,進(jìn)行通信。

        (2)發(fā)送獲取選課信息的請(qǐng)求:向同專業(yè)的在線節(jié)點(diǎn)發(fā)送獲取選課信息的請(qǐng)求。

        (3)接收獲取選課信息的請(qǐng)求:當(dāng)收到其他的客戶端需要獲取學(xué)期開課信息的請(qǐng)求時(shí),根據(jù)對(duì)方的輸入管道ID建立通信,發(fā)送選課信息。

        (4)提交選課結(jié)果:選課完成后,將選課結(jié)果提交給服務(wù)器保存。

        4.2.3 學(xué)生選課模塊

        為了減輕服務(wù)器的負(fù)擔(dān),將學(xué)生選課的業(yè)務(wù)處理程序以Applet的方式嵌入在客戶端頁面中。學(xué)生選課模塊的功能主要包括:查看開課信息、查看已修課、選課、查看己選課以及退選課。

        4.3 數(shù)據(jù)庫(kù)設(shè)計(jì)

        選課系統(tǒng)中的數(shù)據(jù)庫(kù)主要存儲(chǔ)各專業(yè)的學(xué)期開課信息和選課結(jié)果信息,數(shù)據(jù)庫(kù)中主要的表包括:在線節(jié)點(diǎn)信息表(學(xué)號(hào)、IP地址、年級(jí)、專業(yè))、管理員表(用戶ID、用戶名、密碼、系部)、教師信息表(教師ID、教師姓名、系別、密碼、教師簡(jiǎn)介)、開課信息表(課程編號(hào)、課程名稱、開課學(xué)期、開課年級(jí)、開課專業(yè)、主講教師、教師介紹、課程介紹、上課時(shí)間、上課地點(diǎn)、先修課、學(xué)時(shí)、學(xué)分)、選課結(jié)果表(學(xué)號(hào)、課程編號(hào)、課程名稱、選課學(xué)期、學(xué)時(shí)、學(xué)分、上課時(shí)間),還要使用教務(wù)系統(tǒng)中其他子系統(tǒng)中的數(shù)據(jù),如學(xué)籍系統(tǒng)中的學(xué)生基本信息表等。

        5 結(jié)語

        P2P 技術(shù)為互聯(lián)網(wǎng)的發(fā)展帶來了深遠(yuǎn)的影響,也為IT產(chǎn)業(yè)帶來了無限的商機(jī),最近幾年,P2P技術(shù)更是發(fā)展迅速。目前,在文件共享、分布式計(jì)算等應(yīng)用領(lǐng)域P2P顯示出很強(qiáng)的技術(shù)優(yōu)勢(shì)。相信隨著對(duì)P2P 技術(shù)研究的不斷深入,P2P所帶來的技術(shù)創(chuàng)新和應(yīng)用創(chuàng)新還將繼續(xù),它將為社會(huì)的發(fā)展做出巨大的貢獻(xiàn)。

        [參考文獻(xiàn)]

        [1] 陳貴海.對(duì)等網(wǎng)絡(luò):結(jié)構(gòu)、應(yīng)用與設(shè)計(jì) [M].北京:清華大學(xué)出版社,2007.

        [2] 孔祥禎. 淺談P2P網(wǎng)絡(luò)結(jié)構(gòu)[J].科技廣場(chǎng),2009,(1):232-234.

        [3] Ralf Steinmetz . P2P 系統(tǒng)及其應(yīng)用 [M].北京:機(jī)械工業(yè)出版社,2008,9-15.

        [4] 陳鋒.基于JXTA的P2P文件共享系統(tǒng)的實(shí)現(xiàn)研究[J].計(jì)算機(jī)科學(xué),2007,34(12):126-128.

        [5] 苗坤.基于JXTA的P2 P文件共享系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2009,(2):9-13.

        狠狠躁天天躁中文字幕| 97超级碰碰人妻中文字幕 | 国产天堂网站麻豆| 麻豆精产国品| 亚洲AV成人无码天堂| 麻豆视频黄片在线免费观看| 日本丰满老妇bbw| 国产麻豆精品久久一二三| 久久无码精品精品古装毛片| 久久色悠悠亚洲综合网| 亚洲一二三四区免费视频 | 欧美日韩中文国产一区发布| 国产精品久久无码不卡黑寡妇| 美女被插到高潮嗷嗷叫| 亚洲精品中文字幕一区二区| 欧美人和黑人牲交网站上线| 欧美成人中文字幕| 国产精品很黄很色很爽的网站| 久久久99精品免费视频| 日本丰满熟妇hd| 国产资源在线视频| 伊人影院成人在线观看| 亚洲午夜av久久久精品影院色戒 | 少妇AV射精精品蜜桃专区| 人妖另类综合视频网站| 亚洲综合小综合中文字幕| 女人张开腿让男人桶爽| 在线va免费看成| av无码天一区二区一三区| 蜜桃av噜噜噜一区二区三区| 久久免费看黄a级毛片| 国产99久久精品一区二区| 无码av免费精品一区二区三区| av在线播放免费观看| 7777色鬼xxxx欧美色妇| 国产精品 高清 尿 小便 嘘嘘 | 成熟丰满熟妇高潮xxxxx视频| 中文岛国精品亚洲一区| 日韩亚洲在线观看视频| 无码国产精品久久一区免费| 国产精品99久久精品爆乳|