999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于agent技術的EMIF數據共享與互操作的設計與實現

2007-12-31 00:00:00彭文輝王中國楊宗凱鮑新龍
計算機應用研究 2007年12期

摘要:對管理信息系統數據共享和互操作的實現方式進行了討論,介紹了EMIF框架模型,對實現EMIF數據共享的關鍵組件——通信agent的需求模型、功能模型和實現方法進行了系統分析和討論,對該agent關鍵功能——報文處理及傳輸、代理接口等進行了詳盡的設計。

關鍵詞:教育管理信息系統互操作框架; 代理; 報文處理; 數據共享; 互操作

中圖分類號:TP302.1文獻標志碼:A

文章編號:1001-3695(2007)12-0257-03

教育管理信息的共享和互操作對促進整個國家教育信息化和現代化有著重要的意義。迄今為止,我國各級各類教育行政管理部門及學校開發了各種類型的教育管理信息系統(EMIS)。由于歷史的原因,這些系統采用的開發平臺、數據結構、數據定義等均存在較大的差異,使得各個管理信息系統之間缺乏兼容性,難以實現數據共享和互操作。

目前實現軟件互操作的架構方式主要有三類,即P2P架構方式(基于點對點技術)、Web service架構方式(基于端到端技術)和基于中間件技術的架構方式。P2P采用的是兩個應用軟件之間直接進行信息交換,不通過第三方軟件或組件,該方式只適合于在互操作軟件數量不多的情況下使用;Web service是一種新的Web應用程序分支,它們是自包含、自描述、模塊化的應用,可以在網絡(通常為Web)中被描述、發布、查找以及通過Web來調用,該架構方式實現互操作需依賴于Web服務的調用,即需要通過服務注冊中心;使用中間件技術實現信息共享,信息發送方與信息接收方必須通過中間件的轉發來間接實現數據交換。該架構方式的最大優點就是通信雙方可以是異步通信,中間件可暫存信息。

為了在我國實現各類EMIS信息共享和互操作,中國教育部教育信息化技術標準委員會制定和發布了EMIF。當前其最新版本為EMIF CD1.1。EMIF規范是CELTS(China e-learning technology standards,中國教育技術標準與規范)中的重要組成部分,其架構源于美國SIF(schools interoperability framework,學校互操作框架)。SIF是由美國一些軟件公司和教育機構為幫助克服數據共享的技術障礙而發起的。SIF致力于創建一套規則和定義,以允許不同公司的軟件程序能快速、無縫、安全地共享信息。EMIF或說SIF采用中間件技術實現數據的共享和互操作。

1EMIF架構

EMIF結構示意圖如圖1所示。它是一個分布式系統,由一個或多個EMIF區域組成,每個區域均由一臺區域集成服務器(ZIS)和多個應用程序(EMIS)及其agent構成。

1.1單區域結構

單區域 EMIF結構是指一臺區域集成服務器連接一個或多個應用程序及其代理的結構,如圖2所示。

1.2多區域結構

EMIF可以有多個區域,各個區域的ZIS互連可以使不同區域間實現互操作,各區域的ZIS通過代理進行通信。

通信代理是EMIS的延伸,是EMIS與ZIS的通信接口。Agent的主要作用是把EMIS的數據綁定成符合EMIF規范的XML報文,或者把收到的XML報文解讀成EMIS能理解的格式,并與EMIS及ZIS接口。Agent與ZIS之間使用異步通信方式。Agent具有兩種數據傳輸模式,即請求—應答與發布—預約模式,分別用于實現EMIF內各個子系統之間下列數據交換的功能:一個EMIS獲取另一個EMIS的數據;一個EMIS的數據變化時,其他共享其數據的EMIS的相應數據也得到更新。

2EMIF中agent的需求分析

根據EMIF框架中對agent功能的定義,agent運行于EMIS的后臺,它主要負責與ZIS和EMIS進行交互,包括提取EMIS中的數據,根據互操作協議將其封裝打包成標準報文格式;同時也能將ZIS接收的報文解析成EMIS需要的數據。因此,符合EMIF規范的agent應具備以下功能:

a)與ZIS建立連接。基于HTTP或其他網絡傳輸協議建立與ZIS的通信機制,并生成符合要求的注冊報文(EMIF_register message),發送給ZIS,將agent信息注冊到ZIS。

b)向ZIS發布數據更新。對其他agent預約的數據對象,在屬于EMIF數據對象變更時,通過ZIS向其他agent發布數據對象更新信息。

c)數據請求與應答。生成數據查詢條件和請求報文,或在收到應答報文后解析檢索到的信息為EMIS可辨識的數據,包括報文合法性驗證功能。

d)應用程序的必要修改。主要通過調用agent的應用程序接口和數據處理接口,實現agent與應用程序的融合,以及對數據庫作必要的修改。

e)報文生成與解析。通過調用不同的類接口,實現報文簡便生成與解析,也包括數據庫數據與XML間的轉換功能。

f)報文隊列處理。類似ZIS的隊列處理機制,將不能立即處理的報文在本地暫存,放入報文隊列等待處理,并處理死鎖問題,清理無效報文。

當agent接收到報文后,首先進行報文預處理過程(即有效性驗證、身份驗證、報文分類過程),對符合EMIF規范的有效報文,依據報文類別調用不同的報文處理過程。若需生成應答報文,則將報文處理信息反饋給報文制作模塊,生成符合要求的應答報文。若與EMIS有數據交互,則通過數據提取功能導入、導出和指令提取功能,實現EMIS數據庫數據與報文信息之間的轉換。Agent的詳細功能結構如圖3所示。

依據EMIF框架中規定的報文規范、報文處理方法和報文通信機制,本文設計了報文處理模塊。同時實現了以“推”模式為主的報文處理方式,以及“拉”模式的報文傳輸功能。報文處理模塊中的報文服務和傳輸流程及模型如圖4所示。

3EMIF中agent的實現

EMIF中agent的實現包括報文處理與傳輸功能模塊、通信接口功能模塊以及數據對象處理模塊等功能模塊的實現。其中數據對象處理模塊實現數據對象權限設置、數據對象命名標準化、數據結構標準化轉換功能。限于篇幅,下面僅對前兩個功能模塊(特別是報文處理模塊)的實現作一些論述。

3.1報文處理與傳輸機制

報文的處理及傳輸是agent實現的重點和難點。該功能模塊主要實現報文的生成與解析、報文傳輸、報文隊列的處理機制等關鍵問題。本文設計實現的agent通過生成各種報文的通用接口類,調用這些接口實現對EMIF框架報文規范中11種報文的生成和解析功能;用ASP技術和HTTP,基于Web服務器機制實現了報文的傳輸功能;用選擇性報文阻塞解決死鎖問題,實現了類似ZIS的報文隊列處理機制,從而保證報文隊列高效處理。

3.1.1報文生成

Agent利用Delphi提供的XML data binding向導,為固定格式的XML文件(如DTD、XML schema等)生成專門的文件接口。Agent通過調用這些接口可方便地訪問XML文件,實現報文的生成和解析。實現的agent共生成了11種報文類樣式。文中的agent共設計了11種報文類單元,如EMIF_Request報文類如下:

type

IXMLEMIF_EMIFRequestType=interface(IXMLNode)

[′{5C2AEEB9-DFE4-4CDB-B600-EA3719D38297}′]

{Property Accessors}

function Get_Xmlns: WideString;

function Get_Version: WideString;

function Get_EMIF_Request: IXMLEMIF_RequestType;

procedure Set_Xmlns(Value: WideString);

procedure Set_Version(Value: WideString);

{Methods Properties}

property Xmlns: WideString read Get_Xmlns write Set_Xmlns;

property Version: WideString read Get_Version write Set_Version;

property EMIF_Request: IXMLEMIF_RequestType read Get_EMIF_Request;

end;

{Global Functions}

function GetEMIF_Message(Doc: IXMLDocument): IXMLEMIF_EMIFRequestType;

function LoadEMIF_Message(const FileName: WideString): IXMLEMIF_EMIFRequestType;

function NewEMIF_Message: IXMLEMIF_EMIFRequestType;

Agent通過調用request報文類接口NewEMIF_message可方便地在內存中生成request報文XML格式文檔。通過調用其中的LoadEMIF_message,GetEMIF_message接口方便地從XML文件中或內存中的XML節點中讀取數據。

3.1.2報文傳輸

Agent基于HTTP,用ASP實現報文傳輸,并對報文進行簡單的處理。Agent中通過字符串資源文件,存儲報文傳輸ASP文件的基本信息及樣式。報文傳輸文件的部分字符串如下:

{UploadFile.ASP file}

UploadFileASP[13]:=′f2.Copy \"%s\"DatePart(\"yyyy\",Date())\"_\"′+′DatePart(\"m\",Date())\"_\"DatePart(\"d\",Date())\"_\"Hour(Time())′+′\"_\"Minute(Time())\"_\"Second(Time())\".XML\"′;//%s為tempMsg folder

UploadFileASP[20] := ′StrSQL=\"%s\"′;

//%s為數據庫連接字符串

Agent初始化配置過程中,依據用戶及信息管理系統環境,動態生成報文傳輸文件及目錄結構,配置報文傳輸環境。

3.1.3報文隊列處理

Agent收到ZIS發來的新報文時,自動存儲報文,并按時間重命名并寫入報文隊列表中,觸發器發消息給agent處理接收到的報文。假如報文為ACK類報文,則立即處理,處理完畢則清除報文文件及報文隊列中該報文的記錄信息。若為request、response等不能立即處理的報文,則暫存報文,放入報文隊列等待處理。當報文隊列中的未處理報文超過報文有效期限時,則自動清除過期無效報文,從而避免出錯情況造成的報文隊列無限膨脹的可能性。

為解決報文的死鎖問題,本文agent設計了靈活報文隊列處理機制。采用SMB(selective message blocking,選擇性報文阻塞)機制的基本原理解決死鎖問題。報文處理的基本流程如圖5所示。

3.2Agent接口實現

根據EMIF規范,agent需要處理三個基本的接口問題,即agent與ZIS的通信代理接口、agent與EMIS的數據庫代理接口、agent與EMIS的應用代理接口。本文采用COM/COM+組件技術實現以上三個接口的設計,既提供了組件對象之間進行交互的規范,也提供了實現交互的環境。使得EMIS只需調用設計好的接口,即可實現agent功能與EMIS的很好融合。

3.2.1數據庫代理接口實現

不同的教育信息管理系統使用的數據庫也可能不同,因此本agent設計實現了通用數據庫代理接口。其功能是提供agent與數據庫的連接和操作,并建立不同的數據處理機制。采用ODBC、ADO技術使agent適用于各類基于不同數據庫系統的EMIS。

通過選擇不同的數據庫驅動程序,可實現agent與不同數據庫連接。Agent根據所選的數據庫系統,采用不同的SQL語句形式生成所需數據表,并配置相應的觸發機制和存儲過程。

3.2.2應用代理接口實現

本文采用COM/COM+和DCOM技術,實現agent與第三方應用程序的通用接口組件,EMIS只需調用設計好的接口(如agent.dll中的信息獲取界面接口GetInfoForm),即可實現agent功能與EMIS的融合。

3.2.3通信代理接口實現

采用ASP技術、HTTP網絡傳輸協議,基于Web服務器技術設計實現通信代理接口。在使用過程中,agent和ZIS互為服務器,實現了agent與ZIS之間的通信。通信代理接口利用COM/COM+技術做成組件,可方便EMIS調用。

4結束語

教育信息管理互操作框架規范(EMIF)的制定與發布旨在解決目前不同教育管理信息系統之間的互操作問題,從而實現不同EMIS之間信息的交流與共享。目前已有一些教育部門、軟件公司根據此規范著手開發、設計教育管理信息系統信息共享與交流平臺,但還沒有產品推出。筆者已實現了一個EMIF原型系統,本文給出了該原型系統中關鍵組件通信agent的分析、設計和部分實現。本文討論的報文處理方法及流程、接口實現方法等,對EMIF架構的實現及大范圍內教育管理信息系統的數據共享與互操作均有參考價值。

參考文獻:

[1]The schools interoperability framework association(SIFA). Schools interoperability framework implementation specification, version 1.5r1[DB/OL].[2004-10-11].http://www.sifinfo.org/sif-specification.asp.

[2]教育部教育信息化技術標準委員會.教育管理信息系統互操作規范(CELTS-40)[DB/OL].(2002-09-05).http://www.celtsc.edu.cn/680751c665875e93/655980b27ba174067c7b.

“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”

主站蜘蛛池模板: 日韩国产高清无码| 国产一在线| 国产99在线| 麻豆精品在线播放| 久久综合色视频| 亚洲v日韩v欧美在线观看| 日韩精品成人网页视频在线 | 免费国产一级 片内射老| 乱人伦99久久| 天天做天天爱天天爽综合区| 免费欧美一级| 69视频国产| 国产男女免费完整版视频| 四虎永久在线| av在线5g无码天天| 97se亚洲综合不卡| 四虎永久免费在线| 波多野结衣一二三| 日韩毛片免费视频| 亚洲小视频网站| 伊人久久久久久久| 黄色网在线| 成年免费在线观看| 免费全部高H视频无码无遮掩| 老司机午夜精品网站在线观看| 91国内在线观看| 日韩欧美91| 日韩国产无码一区| 一区二区无码在线视频| 国产欧美精品专区一区二区| 白浆视频在线观看| 在线观看亚洲精品福利片| 国产亚洲精品自在线| 色吊丝av中文字幕| 国产极品美女在线| 在线观看亚洲国产| 国产成人免费视频精品一区二区 | 国产在线观看一区精品| 天天躁夜夜躁狠狠躁躁88| 91探花在线观看国产最新| 青青青草国产| 人妻丰满熟妇αv无码| 国产伦精品一区二区三区视频优播| 亚洲V日韩V无码一区二区| 精品国产毛片| 国产va在线观看| 婷婷色丁香综合激情| 国产丝袜91| 国产精品原创不卡在线| 2018日日摸夜夜添狠狠躁| 欲色天天综合网| 国产精品亚欧美一区二区三区| 中字无码av在线电影| 久综合日韩| 一级毛片免费播放视频| 亚洲日韩高清无码| 久草青青在线视频| 天天色天天操综合网| 99久久精品国产自免费| 日韩欧美综合在线制服| 国产第一色| 国产欧美日韩在线一区| 美女一区二区在线观看| 国产对白刺激真实精品91| 在线观看亚洲国产| 国产成+人+综合+亚洲欧美| 亚洲无码免费黄色网址| 在线观看免费人成视频色快速| 久久男人资源站| 无码专区国产精品一区| 色综合天天视频在线观看| 午夜视频免费试看| 欧美在线三级| 在线免费a视频| a亚洲视频| 欧美第二区| 天堂在线www网亚洲| 91色老久久精品偷偷蜜臀| 一级毛片在线免费视频| 亚洲午夜国产精品无卡| 国产精品无码AⅤ在线观看播放| 国产成人精彩在线视频50|