Zope概念和体系结构

来源:互联网 发布:sql手工注入教程 编辑:程序博客网 时间:2024/05/21 21:02

1、为什么要用Zope替代其它Application Server

ZopeZ Object Publishing Environment的缩写,Zope的大部分是用Python编写,关键性能部分是用C编写的。

Zope是一个Application Server框架(就像WebLogic),允许各种技能层次的开发者创建Web应用程序。

为什么要使用Zope替代其它的Application Server,这来自于Zope的一些主要特性:

l         Zope是免费的、开源的

l         Zope是一个包容的平台,包含所有开发应用程序需要的组件

l         Zope允许和鼓励第三方开发者发布应用程序,因此Zope有广泛的集成服务和add-on产品可供使用

l         使用Zope Enterprise ObjectsZEO)集群方案创建的应用程序,不需要改变太多代码就可以支持跨平台

l         Zope允许开发者创建支持各种浏览器的应用程序

l         Zope提供可扩展的安全框架

l         Zope允许高效合作的团队开发

l         Zope可以在大多数流行的OS上运行

l         Zope可以使用Python脚本语言进行扩展

 

2Zope基本概念

1Zope是一个Application Server框架

l         使用Zope提供的服务,可以比其它框架更快速的开发Web应用程序

l         允许使用Python编写应用程序逻辑,使用add-on也支持Perl

l         Zope提供两种页模版方案:Document Template Markup LanguageDTML)和Zope Page TemplateZPT

2)面向对象

l         Zope是一个面向对象的Web开发平台,这意味着可以在不同的开发语言中共享

3)发布对象

l         Web是基于面向对象的,Web资源的URL是容器中对象的路径,HHTP协议提供了传递消息给对象的方法,同时接收该对象的响应

l         Zope会将URL映射到存于其对象数据库(ZODB)中的对象

4Web方式管理

l         Zope管理界面(ZMI)提供了类似于Windows资源管理器的Zope对象系统视图

l         通过ZMI,开发者可以创建和编写Zope对象,甚至定义新的对象类型,而不需要访问文件系统

5)安全代理

l         Zope中的对象提供了比一般基于文件的系统更加丰富的权限

l         不同的对象类型具有各种不同的权限

l         Zope使用“User Folders”对象(包含用户信息)提供管理用户的能力

l         一些Zope add-on提供了扩展的“User Folders”,通过外部数据源(如关系数据库)来获取用户数据

6)本地对象持久性和事务

l         Zope对象被保存在称为Zope Object DatabaseZODB)高效能的事务对象数据库中

l         每次Web请求都被作为一次独立的数据库事务处理

l         当然,关系数据库也能在Zope事务框架中使用

7Acquisition

l         Acquisition的含义是:Zope对象包含在其它的对象中;对象可以从它们的容器中获取属性和行为(方法)

8Zope是可扩展的

l         Zope是高效可扩展的,高级开发者可以创建新类型的Zope对象

l         可以使用Python编写新的add-on,或创建Web应用程序

 

3Zope基本体系结构

 

l         ZServerZope内建的Web Server,支持HTTPFTPWebDAVXML-RPC

l         Web Server:以存在的Web Server,如ApacheIISZope可以通过CGI接口和这些Web Server一起工作

l         Zope Core:用来驱动ZMIZODB的核心引擎

l         ZODB:用于存储Zope对象的对象数据库

l         Relational Database:也可以保存信息到其它的关系数据库(如OraclePostgreSQLMySQL)中

l         File System:当然,Zope也可以和文件系统一起工作

l         ZClasses可以使用ZMI添加的新Zope对象类型

l         ProductsZope允许安装产品(add-on)的方式来添加的新Zope对象类型

原创粉丝点击