`
exedo
  • 浏览: 24938 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

开源PaaS开发平台-云鹤平台

阅读更多
   平台即服务( PaaS )是云计算的主要形式之一,它提供一个完整的开发及运行平台,包括应用设计、应用开发、应用测试和应用托管,这些都作为一种服务提供给客户。因此,客户不需要购买硬件和软件,利用 PaaS ,就能够创建、测试和部署一些非常有用的应用和服务。

   当前的 PaaS 系统主要由两种类型的提供商提供,一是本身是大型互联网企业,如 Google 、 Sina ,分别提供 Google App Engine 和 Sina App Engine ,把处理高并发以及海量数据的基础设施抽象出来,不但可以为自己所用,还可以实现其商业价值 ; 另一类是 SaaS 企业,如 Salesforce ,也是把多年积累的可以处理大量企业以及海量用户的 SaaS 的基础设施抽象出来平台化。前者提供的 PaaS 系统更基础、更像传统的虚拟机和编程环境,但是透明得提供了负载均衡、读写分离等高可用性措施,这类应用一般不会降低应用开发和测试的复杂性,但是会降低部署的成本和复杂性,后者提供的 PaaS 系统更具体化,更偏重于企业应用,可以基于预置的业务模块进行修改和扩展,可以降低应用开发和测试、不受的复杂性和成本,但是受限于模型的抽象能力和预置的业务模块,例如围绕 Salesforce 开发 CRM 相关外围应用会相对容易,而开发其它的应用会增大开发的复杂度。

   PaaS 的著名提供商中还缺失一个角色,就是传统的大型应用系统提供商,应用系统提供商对行业需求有着深刻的理解、对开发有着丰富的经验,只是相对于互联网企业和 SaaS 提供商,他们的人员更分散,如各个项目组分布于各个企业,业务更稳定,依托于庞大的客户群,他们有非常稳定的收入和利润, SaaS 以及 PaaS 还无法对他们形成威胁,造成他们的灵敏度还不够。不过他们正在奋起直追,通过收购和整合首先进入 PaaS 领域,相对于互联网企业和 SaaS 提供商,应用系统提供商更封闭, 他们的选择往往是 PaaS 作为 SaaS 的基础和补充而不是提供独立的 PaaS 产品,基于庞大的客户群和长期形成的品牌,这也是一种最佳的收益方式。

    PaaS 领域也有着创新的力量,云鹤平台( EEPlat )就是该领域的创新型的开源项目( http://code.google.com/p/eeplat/ ),它兼容传统开发环境和云计算环境,多年用于应用系统开发,对应用系统有深刻的理解和高度的抽象,形成了先进的元模型体系。云鹤平台提供了跨平台的能力,一般意义上的 PaaS 都是运行在自己特有的 IaaS 平台之上,云鹤平台并没有提供具体的运行环境,可以运行在所有支持 JVM 的云环境和传统计算环境上面,如 Google App Engine , Amazon EC2 ,各种私有云,服务器, PC 机,甚至笔记本上面。就云计算支持来讲,云鹤平台需要依托于 IAAS 平台和部分 PaaS 平台特性,由于依托于成熟的 IAAS ( PaaS )解决方案,云鹤平台为使用者带来更大的易用性、灵活性和低成本优势。 例如在 Google App Engine 运行云鹤平台开发数据库应用 ( 在云鹤平台中 Datastore 被映射为数据库 ) ,它不仅大大会降低部署的成本和复杂性,还降低了应用开发和测试的复杂性, 由于比 force.com 更完整的元模型体系、更灵活的组织模型、更强大的控制器体系,云鹤平台并不依托于预置业务模块,任何基于数据库的业务系统都可以获得快速开发能力。

   云鹤平台( EEPlat )是支持云计算环境的在线开发及运行平台,同时支持传统计算环境,支持云计算与传统计算环境之间的双向平滑移植。云鹤平台通过在线配置方式进行开发数据库应用系统,提供了完整的元模型体系,实现了声明式配置编程,可以大幅度得提高生产率,可帮助用户实现低成本、高质量、易扩展的信息管理系统。 

   云鹤平台( EEPlat )是通过配置方式进行开发的信息系统应用平台。 EEPlat 可以开发的应用包括 MIS (管理信息系统)、 OA (办公自动化)、 CRM (客户关系管理)、 HR (人力资源管理)、 ERP (企业资源计划) 等。在 EEPlat 基础上形成了不同的产品系列:
    * 面向单服务器的 EEPlat.Service 产品,针对中小规模应用。
    * 面向集群环境的 EEPlat.Cluster 产品,针对健壮性和稳定性要求高的关键应用、中大规模应用。
    * 面向云计算的 EEPlat.Cloud 产品,作为云计算中的 PaaS 平台,方便创建 SaaS 应用,可运行在各种私有云和公共云上面。



基于 EEPlat 的应用可以在 EEPlatService,EEPlat.Cluster 和 EEPlat.Cloud 之间进行移植,一套应用可以运行在不同环境中。

云鹤平台 产品特点
    *  可用:体现在已经经过很多项目、公司实际实用的检验。
    *  实用:体现在项目开发过程中极大提高生产效率、降低开发成本。
    *  易用:以配置代替编程,门槛降低,实现业务人员可直接参与开发。
    *  灵活:
            通过工作流配置,灵活变动业务流;
            通过服务配置,灵活变动程序逻辑和程序流;
            通过页面配置,灵活变动页面外观;
            通过业务对象配置,灵活增减业务实体属性;


为软件开发商带来的优势






   利用 EEPlat 的实施的项目涉及的行业有政府、金融、石油、教育、制造等行业,客户包括国土资源部、国家海洋局、武警总部、沈阳飞机工业公司、辽 河油田、松原油田、中国计量科学院、绍兴银行、民生银行、学而思教育等多家知名单位。软件的生产率根据项目性质的不同可以提升 3-8 倍,并且人员的要求不 高。 EEPlat 平台为上述公司降低了人力成本,缩短了开发时间,拥有了竞争上的成本优势,获得了比同行更丰厚的利润。

声明式编程

   EEPlat的实现不是传统的产生式编程方式,而是选择了声明式编程的方式,并且提出了一套针对信息管理系统的元模型体系。

    声明式编程是一种自上而下的编程模式,编程的思考重点在于直接描述程序的行为,而不是详细描述程序的行为和实现细节。 EEPlat 在声明式编程实现中,提出 了自己的声明式业务对象( Declarative Domain Object )概念。声明式业务对象是可以直接运行的,是对业务模型的映射,拥有属性和服务,与用第三代高级语言的对象概念基本一致。声明式业务对象基本 不需要编码,并且平台保障其运行的的稳定和性能的优化。

   EEPlat元模型是声明式业务对象的模型,是对信息管理系统的合理抽象。在元模型体系下,声明式业务对象是通过元数据(配置数据)进行描述。

    声明式业务对象在 EEPlat 执行引擎的引导下形成用户可用的界面、逻辑等构成的业务系统,本质上执行引擎对 EEPlat 元数据的解析。

对应于 OMG 提出的 MOF ,EEPlat 只有三层:

    信息层( information layer ):利用 EEPlat 开发的信息管理系统
    模型层( model layer ):声明式业务对象
    元模型层( metamodel layer ): EEPlat元模型

总体技术架构

    云鹤平台 (EEPlat) 的目标是提供声明式配置的方式完成信息系统的开发。为此, EEPlat 确立了微内核、元模型、插件体系、总线集成的体系结构。并且 为了概念一致性, EEPlat 提供了独立实现的 O/R Mapping 框架, HMVC 界面框架,流程引擎等。系统为 SOA 架构,从元模型层面提供了对 WebService 的支持,即平台中每个服务都是外部可以调用的 Restful WebService 。总体技术架构见下图:




UI 技术架构

EEPlat平台在界面控制模式方面,充分考虑到传统的 MVC 模式的优缺点,最终采取了层叠式 MVC 模式,即 HMVC 。



HMVC 模式即 Hierarchical-Model-View-Controller 模式,也可以叫做 Layered MVC 。 HMVC 模式把客户端应用程序分解为有层次的父子关系的 MVC 。反复应用这个模式,形成结构化的客户端架构。  它的优点主要有:

把界面分成了多个部分,降低了依赖性。

支持鼓励重用代码,组件或者模块。

在今后的维护中,提高了可扩展性。





服务层技术架构

EEPlat 的服务层和 UI 层是松耦合的。一般情况下, UI 层通过服务层提供的 Restful WebService  进行交互。服务层实现的核心是 声明式业务对象 。

声明式业务对象的服务可以通过 业务对象总线 进行互操作。

声明式业务对象的粒度可大可小,可以是一个实体表,也可以是一个较大的业务模块。

服务可以调用多个规则,规则本身可以根据上下文环境判断是否可以执行,从而完成复杂的业务逻辑而无需编码。

服务可以调用脚本或 Java Class 完成平台不能配置或不易配置的业务逻辑。













  • 大小: 146.7 KB
  • 大小: 224.9 KB
  • 大小: 148.2 KB
  • 大小: 224.9 KB
  • 大小: 14.1 KB
  • 大小: 49.2 KB
  • 大小: 85.4 KB
1
1
分享到:
评论
1 楼 ghpaas 2014-06-22  
web可视化自定义表单推荐使用GForms开发平台(http://blog.csdn.net/ghpaas/article/details/30222989),GForms开发平台让开发人员甚至非技术人员在短短几分钟内创建全功能的展现服务,让开发团队更加适应客户和市场的需求,从而提高客户服务和速度实现收益。该开发平台提供可视化的设计器、运行时,设计器基于eclipse开发,非常的简单,完全实现xforms1.1标准,并且支持开发人员编写样式、javascript处理函数等。

相关推荐

Global site tag (gtag.js) - Google Analytics