3.2教学资源库主要功能模块
网络教学资源库广义上来讲是个资源共享和管理的系统,一般包括5个模块:资源管理、资源访问、资源需求、用户管理和服务管理,如图3所示。
(1)资源管理功能主要进行资源审核和资源维护工作。包括对上传资源进行审核入库;管理员对资源进行添加、删除和修改。
(2)资源访问功能主要包括用户对资源的检索、下载、评价、收藏等功能。
(3)资源需求功能主要包括资源需求请求、资源需求回复、资源交换等功能。
(4)用户管理功能主要包括用户信息管理、资源上传、已上传资源列表、用户投诉等功能。
(5)服务管理功能主要包括建议反馈、游客访问、评价管理等功能。
3.3群集设计
BEAWebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的JAVA应用服务器。WebLogic还拥有出色的集群技术,既实现了网页集群也实现了EJB组件的集群,并且不需要任何专门的硬件或者操作系统支持。
在WebLogic中域(Domain)是配置了管理服务器(AdministratorServer)的WebLogicServer实例管理的逻辑单元,在域中可以包含了多个服务器实例以及服务器群集引域和服务群集问的逻辑关系如图4所示。一个域中必须配置一台管理服务器,并且只能配置一台;而服务实例1、服务实例2、服务实例3和服务实例4可以运行于同一台机器也可以是运行于不同的机器;一个域中可以有多台物理机器。
在教学资源库中使用WebLogic群集技术,通过一组相互协作的服务实例,在多台机器间复制和应用表示层和逻辑层的能力,从而实现关键业务系统的负载分布,消除个别故障点。
(1)故障转移的实现
简单的说,故障转移是当应用程序组件正在处理某个特定作业时,某些处理任务部分由于任何原因而变得不可用已失败对象的副本将结束此作业。由于群集中的所有服务实例执行同一服务请求,同一服务在多个服务实例上同时存放,并且服务实例问可以复制状态信息。故当某个服务实例发生故障,另-N务实例可以接管,服务自动切换到正在运行的服务实例上。群集故障转移的处理对用户来说是完全透明的,用户并不知道发生了故障转移。
(2)负载均衡的实现。群集由代理来实现负载均衡。通过代理将请求转发到不同的管理服务器上来实现。代理将负载按比例分配到群集中所有的服务实例,使每个服务实例能够充分发挥其能力。群集对加入其中的服务实例的性能没有限制。并且可以在同一台机器上启动多个服务实例,充分利用机器的资源。因此,当教学资源库客户端的请求突然大幅增加时,可以通过动态增加服务实例来提高性能。
4.结束语
基于群集的网络教学资源库采用了多层体系结构设计,解决了传统三层休系结构中存在的数据与业务耦合问题,方便系统进行动态服务扩展;使用群集服务有效地实现了系统负载均衡和故障转移,并为今后教学资源库服务的变化做了更有效的准备。