当前位置:首页 > 电源 > 功率器件
[导读]1 引言 随着网络技术的发展和网络应用的普及,远程教育被认为是网络时代新的教育模式,正在迅速发展。在该教育模式下,教学活动突破了学习时间和空间的局限性,教师与学

1 引言

随着网络技术的发展和网络应用的普及,远程教育被认为是网络时代新的教育模式,正在迅速发展。在该教育模式下,教学活动突破了学习时间和空间的局限性,教师与学生之间的关系发生巨大改变,教学和学习过程体现为教师一学生和学生一学生之间的资源共享和交流互动。然而,当今主要使用的基于B/S结构的远程学习系统暴露出许多缺陷:(1)只依靠服务器端存储信息和根据用户请求进行分发,信息仓储基本保持静止;(2)以服务器为中心,容易产生服务器瓶颈问题;(3)用户处于一种被动接受状态,而不能提供信息。
P2P(Peer-to-Peer)计算提供一种全新方式,P2P网络认为所有节点在共享信息方面能力平等,每个用户可提供分布信息仓储,弱化了服务器客户机的概念,这一特点符合现代教育模式中的教师一学生关系;从目前应用看,P2P在大范围的共享、搜索方面具有较大优势,不经服务器就可实现对等节点间的资源传递,避免发生服务器瓶颈问题,这恰好符合了现代教育中的学生一学生关系。因此,将P2P技术引入到远程学习系统可发挥其在协同、搜索方面的优势,扩展远程学习系统在现代教育中的应用,并能理想地解决传统B/S结构应用系统的种种弊端。

2 基于JXTA技术的P2P网络

JXTA项目是由SUN公司发起的开放源代码项目,主要用于提供P2P系统所需的基础服务,由一系列简单的、开放的协议组成。通过这些协议,连接到网络的任何设备都能够相互通信、协作和资源共享。JXTA技术致力于创建一个通用平台,以简单而有效的方式构建特定的对等式和分布式服务与应用,从而使开发者无需过多考虑如何解决对等计算的技术问题,集中精力实现和完善可扩展、互操作性强、可靠性好的高层应用。

2.1 JXTA应用程序的体系结构

JXTA应用程序的体系结构如图1所示,从下至上划分为3个层次,分别为核心层、服务层和应用层。



(1)核心层(JXTA Core)该层封装了最根本的东西,为P2P服务和应用提供核心支持。包括对等节点创建、对等组创建、Peer发现、Peer通信、Peer监视和相关的安全原语。

(2)服务层(JXTA Services) 该层扩展核心层的功能,为P2P应用程序提供可选通用服务,如索引、文件共享、分布式信息检索、对等节点认证、代码缓存和内容缓存机制。
(3)应用层(JXTA Application)该层为创建各种类型的P2P应用系统提供相关的应用程序,主要有信息内容管理、分布式存储以及实时信息传输等应用程序。

2.2 JXTA协议

JXTA协议采用XML标准的数据格式定义消息,独立于具体的编程语言和传输协议,使得它更易于理解和获得更多的支持。它可在TCP/IP、HTTP、 BlueTooth、HomePNA或其他传输协议之上建立一个虚拟JXTA网,使得节点位于由防火墙和NAT设备分隔开的网络的不同部分或者处于异构网络协议的环境之间都同样可以相互通信。这一优点正是当前远程学习系统最需要的。

3 远程学习系统的设计与实现

3.1 远程学习系统的架构设计

构建的基于JXTA的P2P远程学习系统采用混合P2P模式,各个参与学习的站点分为3种不同角色:学生对等节点(Student Peer,SP)、教师对等节点(Teaeher Peer,TP)、教务管理对等节点(ManagerbPeer,MP)。MP在学习系统中起到管理、组织、协调各参与者的作用,并负责创建课程组,记录各个课程组的资源索引,在课程组间提供搜索路由的功能,管理维护教学网站中的BBS、电子白板、聊天室、资源下载区、教师信息、学生信息、内部电子邮件系统等栏目;TP节点从属于某一课程组,主要协调、组织、评价本课程组内参与学习者的学习过程,维护本课程组内资源的索引信息,并将资源索引的变动信息传递给MP;SP找到相应课程组后可加人到其中,利用课程组中提供的课件、参考资料等共享资料进行自主学习;当碰到疑难问题时,可与在线人员进行两两学习交流,或展开多人共同探讨;若遇到难题无法解决时,可联系课程组教师通过电子白板实现虚拟教室,进行及时在线辅导讲课。整个远程学习系统的架构如图2所示。


3.2 远程学习系统的实现

系统应用的开发工具是NetBeans5.5、JDK5.0、JXTA2.0、 Sun Java System Application Server Enterprise Edition 8服务器,数据库采用由纯Java语言编写的小型数据库PointBase,它对平台的支持性强,并可直接过渡到其他数据库。通过使用面向对象的程序设计方法,根据远程学习系统的工作原理和主要功能设计以下3个主要的类:

(1)Manager类该类代表系统中的MP,负责为MP设置JXTA环境及完成与TP的通信连接,将加入对等网的TP分配至合适的课程组;能够创建一个新的课程组,当某一课程组资源点击人数低于某值时,删除该课程组。主要方法有:启动JXTA环境startJXTA(),创建课程组createCourseGroup()、删除课程组deleteCourseCroup()、发布提供的远程学习服务discoverySvc()、获取节点在线状态pipeAdv()、创建一个通信管道inputPipe()、信息发送sendMessage()、发布节点的在线状态publishPipeAdv(),创建信息发送管道 createInputPipe()和运行主方法main()等。

(2)Teaeher类该类代表系统中的TP,负责为TP设置JXTA环境以及建立到MP的通信连接,并完成在学习系统中教师的功能。主要方法有:启动 JXTA环境startJXTA(),发现教务对等节点在线状态discoverManagerPipeAdv(),创建连接到MP的管道 createManagerPipes()、发布TP节点的在线状态pub-lishTeacherPipeAdv(),创建发送会话消息到MP的通信通道createTeaeherInputPipe()、MP确认TP发送的答案accept()、创建新会话requestNewSession()、读取TP的输入getUserRe-sponse()、获取TP对MP的响应sendToManager()、问题信息处理processMessage ()、获取对等节点问传输信息中的文本字符串getElementValue()、建立与MP节点的连接connectMan-ager()、断开与MP 节点之间的连接disconnectManager()、请求一个新会话run()和运行主方法main()等。另外,Teacher类的main()方法中还定义一个InputPipeMsgListener类实现PipeMsgListener接口来获得管道中的消息。

(3)Student类该类代表系统中的SP,负责为SP设置JXTA环境以及建立与TP的通信连接,并完成在学习系统中学生的功能。主要方法有:启动JXTA环境 startJXTA(),发现教师对等节点在线状态discoverTeacherPipeAdv(),创建连接到,TP的管道 createTeacherPipes()、发布SP节点的在线状态publishStudentPipeAdv(),创建发送问题答案到TP的通信通道 createStudentInputPipe()、TP确认SP发送的答案accept()、创建新会话requestNewSession()、读取 SP的输入getUserRe-sponse()、获取SP对TP的响应sendToTeacher()、问题信息处理processMessage ()、获取对等节点间传输信息中的文本字符串getElementValue()、建立与TP节点的连接connectTeacher()、断开与TP节点之间的连接disconnectTeacher()、请求一个新会话run()和运行主方法main()等。

(4)Agent类该类负责收集问题和答案,对学生对等节点收集的答案进行评估响应,并在“问题——答案”会话结束后根据该学生的回答给出相应的学习建议。主要方法有:问题和答案集合创建initProblems(),获得发送问题的总数get-TotalNumberOf Questions(),为SP提供下一个问题get-NextProblem(),处理答案processAnswer(),接收最后一个答案 getLastAnswer()、判断问题是否结束hasMoreProblems(),获得正确答案总数getTotalAnswersCorrect ()和获得学习建议getSuggestions()等。此外,Agent类还定义了一个Problem类。这个类使用了三个方法:获得特定问题编号的 getNumber()方法、获得问题内容的getQuestion()方法和获得问题答案的getAnswer()方法。

(5)AgentFactory类 该类主要负责创建Agent对象。主要方法有:获得Agent对象(getAgent)。系统开发完成后,进行了各种功能测试,证明该系统均能顺利完成工作。

4 结束语

JXTA项目使得P2P应用程序的开发者能将一个应用程序中与P2P相关的特定功能交给JXTA去实现,大大提高了P2P应用程序的开发效率。

同时,由于JXTA是一个开放源代码项目,可以根据自己的需要进行适当修改,使得所开发的应用程序具有高可扩展性。与传统的分布式系统相比,P2P与JXTA技术具有无可比拟的优势,将它们引入远程教育应用系统开发有着广阔的应用前景。

这里在分析了JXTA的体系结构及核心协议后,利用JXTA技术设计和开发了一个简单的并且具有可扩展、互操作性强及高可用性的P2P远程学习系统。通过该系统,学生可以更充分更有效地利用远程教学过程中的共享资料进行自主学习,更加方便学生和教师之间的交流,提高学生的学习积极性,促进学生学习成绩的提高;同时也有利于教师在教育过程中角色的转变,使教师从课堂主讲人转向学生学习的组织者和指导者,帮助辅导学生进行自主学习,提高学生的学习水平。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

太阳能供电应用系统的设计需要考虑多个方面,包括太阳能电池板、储能装置、控制模块等。本文将介绍一种基于太阳能供电的应用系统设计方法,并从这几个方面进行详细阐述。

关键字: 太阳能 系统设计

北京2023年8月15日 /美通社/ -- 日前,在第五届OCP China Day 2023(开放计算中国技术峰会)上,浪潮信息正式推出融合架构3.0原型系统,以开创性的系统架构设计实现了计算资源、存储资源、...

关键字: 系统设计 内存 软件定义 数据中心

北京2023年8月7日 /美通社/ -- 随着大模型智能水平的提升,AIGC所需要的算力在不断增长。大模型的参数量超过千亿,甚至突破万亿级别,预计智算中心将迎来更快发展。IDC预测,2022-2026年,全球AI计算市场...

关键字: CHINA 数据中心 AI 系统设计

无论温度怎么变化始终UCQ1=UCQ2,电路以两只管子集电极电位差作为输出,就克服了温漂 当u11=u12(共模信号)T1管和T2管所产生的电流变化相等;因此集电极电位的变化也相等。

关键字: 差分放大器 系统设计 电极电位

大家好,我是鲏。认识我的朋友都知道,我是一个实践派,相比研究枯燥的理论知识,我更喜欢做自己想做的项目,用技术来实现自己的想法的感觉真的很棒。所以从大学期间一直到现在,除了工作中的项目外,我依然保持着自己做项目的习惯,有坚...

关键字: 系统设计 技术选型 需求分析

(全球TMT2022年8月30日讯)近日,在2022英特尔中国数据中心合作伙伴技术峰会上,英特尔与浪潮信息等产业生态伙伴联合发布了《绿色数据中心创新实践 -- 冷板液冷系统设计参考》白皮书,分享冷板液冷技术关键部件的最...

关键字: 系统设计 英特尔 数据中心 生态系统

北京2022年8月30日 /美通社/ -- 近日,在2022英特尔中国数据中心合作伙伴技术峰会上,英特尔与浪潮信息等产业生态伙伴联合发布了《绿色数据中心创新实践 -- 冷板液冷系统设计参考》白皮书,分享冷板液冷技术关键部...

关键字: 系统设计 英特尔 数据中心 电量

摘要:近年来,受人类活动的影响,各大水域的水质污染问题越来越严重,大部分水资源受到严重污染,水质处理问题亟需解决。分析水体污染情况对改进水质有着重要意义,目前水质监测主要采用人工或无人船的方式。人工监测方式工作量大,影响...

关键字: 水质监测 无人机 系统设计

摘要:根据饶平县高堂水闸重建工程建设实际需求,对高堂水闸运行管理进行实时在线式监控与监测,通过闸门控制、视频监控、水情测报、安全监测和网络通信等系统的设计,为高堂水闸的水工建筑物安全、防洪调度和自动化管理提供技术支持,以...

关键字: 管理信息系统 水利工程 系统设计

湖州2022年7月26日 /美通社/ -- 近日,浙江省科技创新大会在浙江省人民大会堂隆重举行。大会正式颁布2021年度浙江省科学技术进步奖,隆重表彰为浙江科技创新事业和经济社会发展做出突出贡献的科技工作者及团队。...

关键字: 电梯 检测技术 系统设计 零部件
关闭
关闭