服务器 频道

微内核与巨内核 按需选择是关键

    【IT168 专稿】8月29日,由澳信传媒IT168主办的2009年系统架构师大会在北京举行。在下午的教育行业架构设计专场技术沙龙上,来自北京邮电大学网络教育学院的专家团队以及华东师范大学的专家们一同分享了远程教育平台架构的相关实例。北京邮电大学网络学院首席架构师苏占玖老师演讲的题目是“开发式插件系统的研究”。

    苏占玖老师曾担任北邮在线总工程师,负责开发了网络多媒体课件制作系统、远程培训平台、课件点播系统、作业考试系统等软件产品以及一系列多媒体课件。本次沙龙上,他主要就开放式插件系统的相关研究分享了经验。

    "远程教育系统对高扩展性的要求很高,使用插件系统可以方便第三方开发,在系统发布后进行功能扩充,而不需要重新对整个系统进行编译,只需要遵循一定的规范对接口进行编程。"苏占玖博士表示,"这种模块化的方式允许用户在不修改主系统核心文件的情况下,定制相关功能。"

 

    苏博士认为,插件系统主要有两大类型:微内核(级联树形结构)与巨内核(管理容器,并联结构)。其中,微内核的主要特点是拥有父插件、子插件,而界面呈现是由扩展点的父插件来决定,插件交互也是通过国展店实现的。此外,插件之间的赖关系由配置文件制定,其延迟加载也是由配置文件中的详细描述来定义,只有在调用时才会被加载。

    相对来说巨内核的界面呈现是由运行框架来决定的,在其设计之初就已经确定好未来插件的显示方式。而插件之间也是由巨内核统一进行管理的,其依赖关系一般没有管理。巨内核的典型例子就是目前很火的SNS社区,如校内网、Facebook、开心网等等。

    据苏博士介绍,Sakai插件基于标准的Portal框架,其应用分为Shared/Components/Webaps三个部分。按照巨内核的模式,Sakai的一个Webapp即为一个插件,而一个插件可以提供很多Portlet。在苏占玖博士给出的北邮网络学院的范例上,很多参会者都看到了开心网的侧边栏插件管理模式。据介绍,Sakai的每个项目站点和课程都可以单独选用不同的插件进行应用定制。

    拿校内网的插件系统举例,苏博士表示,校内网的插件API可将"外部应用"直接调用出来,或者选择"安装到校内网",他表示其用于插件开发的语言版本很多,并且支持类似opensocial等小工具,其发布形式有iframe和xnml两种方式。据介绍,xnml模式返回的内容是xnml格式,其内容由校内网的API服务器接收解析,显示在插件内容区内,呈献给用户;iframe则直接返回的是html内容,与以往的网页嵌套类似。

0
相关文章