研究 Researches


项目 Projects

主要从事网络化软件的运行支撑系统及相关技术的研究,先后开展了如下研究项目:


应用服务器(PKUAS, 四方国件Orientware, Nanokit), 2004 - 2012

应用服务器是一种用于支持构件化应用开发、运行和管理的中间件,功能丰富而结构复杂,因此如何保持高度的扩展性和灵活性是很重要的问题。2004 - 2006年间开展应用服务器的良构性研究工作,提出运用软件工程关注点分离原则解构应用服务器,为JEE应用服务器PKUAS 2005 版本设计了新型基于Aspect的体系结构,使得应用服务器自身构件化、易配置、易演化、易维护。PKUAS获得了2008年国家技术发明二等奖,上述工作是重要的技术创新点(个人排名第六)。

2009 - 2011年在核高基项目的支持下开展国产中间件参考实现及平台的研发,开发设计了开源版本的 PKUAS 2010,支持JEE 5,EJB2 和 EJB3,易用性强,对资源要求低而运行效率高,成功和中创Loong等集成为国产中间件集成套件“四方国件”,四方国件获得2011年中国电子学会电子信息科学技术奖一等奖(个人排名第六),四方国件在面向现代服务业领域进行的应用技术创新获得2016年山东省科技进步一等奖(个人排名第三)。

期间开展了Nanokit项目, 对面向实时嵌入式领域的Java处理机相关技术进行了研究。


分布并发透明的程序设计与基于Erlang/OTP的弹性计算平台 UniAS, 2012 - 2015

对应用服务器的研究引发了对网络分布环境下如何编写弹性可伸缩程序的思考。随着计算机网络不断连接各种分布资源、形成全球泛在的“统一的计算机”、“虚拟计算环境”的时候,原有的程序难以像以往那样轻易地在新的硬件上获得性能加速,亟需研究与开发面向多核多处理器、面向网络多处理机的新型程序开发技术与工具。因此在国家973和自然基金课题的支持下,开展分布并发透明的虚拟计算环境程序设计技术研究,目标是针对多核化、网络化等硬件变革带来的分布并发程序设计需求,研究新型程序设计语言设施及支撑环境关键技术,使得程序员可以象现在编写单任务程序那样,较容易地编写可透明分布执行的并发程序,并通过运行支撑环境进行自动化的任务调度和任务可靠性保障,降低分布并发应用的开发、管理、维护难度,提高编程效率。

主要研究结果是基于Actor 模型的弹性编程技术。设计了基于Erlang语言、支持透明分布与动态伸缩的编程设施Uni_supervisor,实现了一套支持多种编程模型的开源弹性计算平台UniAS。UniAS 对于高并发应用、弹性流处理应用、简单并行应用支持非常良好,在课题组所在实验室的大数据处理平台中得到应用。


面向小型数据中心的云操作系统 Docklet, 2015 - Now

UniAS在进行任务弹性伸缩时需要解决集群的资源管理和运行环境部署问题。这促使了开展Docklet 项目研究:如何让多用户和多作业方便地共享数据中心。

Docklet 是一个开源 小型数据中心操作系统原型,设计初衷是让私有云的用户能方便地直接通过浏览器在云化的 工作空间 中开展工作,而不必关心硬件管理、系统配置等细节。

Docklet的工作空间由虚拟集群、计算服务、用户数据组成。Docklet提出了一种新的服务模型ClaaS(Cluster as a Service),用一种简单而易于实现的方式让多个不同的应用程序共享数据中心硬件资源,主要思路是通过容器技术、软件定义技术等将物理集群虚拟化为虚拟集群,使得大部分的分布式应用就可以在无需任何修改的条件下直接运行在虚拟的集群环境中。Docklet通过镜像管理和配置管理,可以方便地集成多个大数据处理和科学计算服务,包括Spark、MPI等各种计算框架,以及Python、R、Java等语言及其库,帮助用户进行数据处理。Docklet通过集成的Jupyter Notebook 提供基于WEB的工作环境界面,用户通过浏览器可以在云端进行诸如编码、测试、数据分析等工作,可以将数据绘成图表并在浏览器中实时显示。

Docklet已在北京大学计算中心进行了部署,为全校师生开展数据分析、课程教学实验提供服务。在北理工大数据系统软件国家工程实验室部署, 支撑"数据科学家云上工作室", 帮助将数据科学家从大数据相关软件与服务的学习、安装、配置、调试、管理、升级等繁琐的工程性活动中解放出来,使其只需关注数据、算法和应用本身。

目前Docklet是为单数据中心设计的,未来将为跨多云的云际计算环境(Joint Cloud Computing Environment)设计,成为虚拟专用云的平台载体。该项研究已获得国家国家重点研发计划课题(前沿基础类)的支持。


获奖 Awards


资助 Fundings


论文 Publications



专利 Patents