PDM体系结构的发展
作者:2013/8/21 9:25:29

 

PDM的体系发展

    本节主要介绍PDM系统的技术发展,对于当前最为流行的J2EE技术作了比较详细的介绍。翻开大型PDM系统的技术发展史,可以清楚地看到软件技术的发展在各个版本上留下的烙印。正是不断发展的软件技术促进了PDM系统的发展,使其保持旺盛的活力。从系统技术上来说,产品数据管理体系结构的发展经历了以下几个阶段(3-2)

    最初是二层化应用,通常被称为Client/Server应用。典型的二层化体系结构如图3-2所示。

 

查看更多精彩图片
 

 

3-2二层化体系结构

    在很多情况下,服务器提供的惟一服务就是数据库服务。在这种解决方案中,客户端程序负责数据访问、实现业务逻辑、用合适的样式显示结果、弹出预设的用户界面、接受用户输入等。Client/Server结构通常在第一次部署的时候比较容易,但难于升级或改进,而且经常基于某种专有的协议(通常是某种数据库协议)。它使得重用业务逻辑和界面逻辑非常困难。例如,在企业内部进行较大的组织或流程上的改变时,开发量就会成倍地增加,系统实施遭受到的打击往往是致命的。但当前一些小型的PDM系统大多采用这种结构,采用的开发语言大多为C++, Dephi等编程语言,在当时的设计条件下也是可以满足一定需求的。

    随着研发技术尤其是设计、仿真技术的发展,一个突出的问题暴露出来,那就是跨平台问题。厂商要不断地为客户编制各种版本的程序:HP工作站版、IBM工作站版、PC版,往往一个PDM软件需要经过多个版本的同时编制才可以发布,程序升级也需要考虑多个版本的需要,这样研制成本就很高了。

    为了解决这一矛盾,一种跨时代的技术应运而生,这就是Java。它通过构造虚拟机来屏蔽各个不同操作系统的影响,使得一套程序可以吃遍天下,这样绝大多数厂商都争相开发出基于JavaPDM版本。随着Internet技术的发展,协同成为世界关注的焦点。图3-3是一部Web技术发展的缩影。在CGI程序大行其道的时候,PDM厂商几乎没有什么动作。真正动作主要集中在以下几个焦点:

    .Java Application

    .Java Applets

    .J2EE

查看更多精彩图片
 

3-3 Web技术的发展

    最初备受关注的是Java Application技术,这时的代表有iMANPDM系统.随后出现的是Java Applet技术,这是一种可以嵌入在浏览器端运行的Java小程序,这时的体系结构的代表有PTCWindchi一以及EDS (SDRC)e! Vista。随着Sun公司推出J2EE体系结构,各个厂家纷纷向J2EE结构转型,比较有代表性的是EDS(SRDC)TeamCcnter

PDM框架——J2EE介绍

    J2EE (Java2 platform. Enterprise Edition)是美国SUN公司推出的一种全新概念的模型,与传统的互联网应用程序模型相比有着不可比拟的优势。J2EE的部分起因就是想解决二层化结构的缺陷。于是,J2EE定义了一套标准来简化N层企业级应用的开发。

    J2EE是一种利用Java2平台来简化诸多与多级企业解决方案的开发、部署和管理相关的复杂问题的体系结构。J2EE技术的荃础就是核心Java平台或Java2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如“编写一次、到处运行”的特性、方便存取数据库的JDBC APICORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对EIB (Enterprise Java Bean), Java ServletsAPIJSP以及XML技术的全面支持。下面先介绍J2EE的分层结构,然后介绍该分层结构中涉及的关键技术。J2EE定义了一套标准化的组件、并为这些组件提供了完整的服务。J2EE还自动为应用程序处理了很多实现细节,如安全、多线程等。其结构主要可以分为4层:

      (1)客户层

    在一个基于WebJ2EE应用中,用户的浏览器在客户层中运行,井从一个Web服务器上下载Web层中的朴态HTML页面或由JSPservlet生成的动态HTML页而。在一个不基子WebJ2EE应用中,独立的客户程序可以是运行在一些网络系统中的Applet程序,它们可以不经过Web层直接访问得到Enterprise Bean

      (2)显示层

    尽管浏览器可以完成某些动态内容显示,但为了兼容不同的浏览器,这些动态生成工作应该放在Web服务器端进行,使用JSPServiets,或者XML(可扩展标记语言)(可扩展样式表语言)

      (3)业务逻辑层

    作为解决或满足某个特定业务领域需求的逻辑业务代码,由运行在业务层的Enterprise Beans来执行。一个Enterprise Bean从客户程序处接收数据,对数据进行处理,再将数据发送到后台集成的系统层并从中检索数据,将得到的业务数据返回客户程序。

      (4)后台系统集成

    后台系统,即企业信息系统,运行着企业基础设施系统,如ERP, PDM,数据库系统等。同后台系统的集成可能需要用到许多不同的技术,至于何种最佳需要根据后台系统的特征而定。

    J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:

保留现存的IT资产:由于企业必须适应新的商业需求,利用已有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个以渐进的(而不是全盘否定的)方式建立在己有系统之上的服务器端平台机制是公司所需求的,JZEE架构可以充分利用用户原有的投资,如一些公司使用的BEA TuxedoIBMCICSIBM EncinaInprise VisiBroker以及Netscape Application Server

这之所以成为可能是因为J2EE拥有广泛的业界支持和一些重要的“企业计算”领域供应商的参与。每一个供应商都对现有的客户提供了不用废弃已有投资,进入可移植的J2EE领域的升级途径。由于基于J2EE平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。

    高效的开发:J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间件供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。高级中间件供应商提供以下这些复杂的中间件服务。

    状态管理服务:让开发人员写更少的代码,不用关心如何管理状态,这样能够更快地完成程序开发。

    持续性服务:让开发人员不用对数据访问逻辑进行编码就能编写应用程序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护。

 

   分布式共享数据对象CACHE服务:让开发人员编制高性能的系统,极大地提高整体部署的伸缩性。

    支持异构环境:J2EE能够开发部署在异构环境中的可移植程序。基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。因此.设计合理的墓于J2EE的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。J2EE标准也允许客户订购与J2EE兼容的第三方的现成的组件,把它们部署到异构环境中,节省了由自己制定整个方案所祷的费用。

    可伸缩性:企业必须选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在它们系统上进行商业运作的大批新客户。基于 J2EE平台的应用程序可被部署到各种操作系统上。例如,可被部署到高端UNIX与大型机系统,这种系统单机可支持64256个处理器(这是Windows NT服务器所望尘莫及的)J2EE领域的供应商提供了更为广泛的负载平衡策略。能消除系统中的瓶颈,允许多台服务器集成部署。这种部署可达数千个处理器,实现可高度伸缩的系统,满足未来商业应用的需要。

    稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需要。因为Internet是全球化的、无处不在的,即使在夜间按计划停机也可能造成严重损失。若是意外停机,那会有灾难性后果。J2EE部署到可靠的操作环境中,它们支持长期的可用性。一些J2EE部署在Windows环境中,客户也可选择健dit能贾吵子的操作系统如Sun SolarisIBM OS/390。最键壮的操作系统可达到99.999%的可用性或每年只需5min停机时间。这是实时性很强商业系统理想的选择。

这种基于组件,具有平台无关性的J2EE结构使得J2EE程序的编写十分简单,因为业务逻辑被封装成可复用的组件,并且J2EE服务器以容器的形式为所有的组件类型提供后台服务。因为使用者不用自己开发这种服务,所以可以集中精力解决手头的业务问题。

容器和服务容器设置定制了J2EE服务器所提供的内在支持,包括安全,事务管理,JNDI (Java Naming and Directory Interface)寻址,远程连接等服务,以下列出最重要的几种服务:J2EE安全(Security)模型可以让使用者配置Web组件或Enterprise Bean,这样只有被授权的用户才能访问系统资源。每一客户属于一个特别的角色,而每个角色只允许激活特定的方法。使用者应在EnterpriseBean的布置描述中声明角色和可被激活的方法。由于这种声明性的方法,使用者不必编写加强安全性的规则。

    J2EE事务管理(Transaction Management)摸型让使用者指定组成一个事务中所有方法间的关系,这样一个事务中的所有方法玻当成一个单一的单元。当客户端橄活一个Enterprise Bean中的方法,容器介入一管理事务。因有容器管理事务,在Enterprise Bean中不必对事务的边界进行编码。要求控制分布式事务的代码会非常复杂。使用者只需在布置描述文件中声明Enterprise Bean的事务属性,而不用编写并调试复杂的代码.容器将读此文件并为使用者处理此Enterprise Bean的事务。

    JNDI寻址(JNDI Lookup)服务向企业内的多重名字和目录服务提供了一个统一的接口,这样应用程序组件可以访问名字和目录服务。J2EE远程连接(Remote ClientConnectivity)模型管理客户端和enterprise bean间的低层交互.当一个enterprise bean创建后,一个客户端可以调用它的方法就像它和客户端位于同一虚拟机上一样。

    生存周期管理(Life Cycle Management)模型管理Enterprise Bean的创建和移除,一个Enterprise Bean在其生存周期中将会历经几种状态。容器创建Enterprise Bean,并在可用实例池与活动状态中移动它,而最终将其从容器中移除。即使可以调用Enterprise Beancreateremove方法,容器也将会在后台执行这些任务。

    数据库连接池(Database Connection Pooling)模型是一个有价值的资源。获取数据库连接是一项耗时的工作,而且连接数非常有限。容器通过管理连接池来缓和这些问题-Enterprise Bean可从池中迅速获取连接。在Bean释放连接之可为其他Bean使用。容器类型J2EE应用组件可以安装部署到以下几种容器中去:

.EJB容器管理所有J2EE应用程序中企业级Bean的执行。Enterprise Bean和它们的容器运行在J2EE服务器上。

.Web容器管理所有J2EE应用程序中JSP页面和Serviet组件的执行。Web组件和它们的容器运行在J2EE服务器上。

.应用程序客户端容器管理所有J2EE应用程序中应用程序客户端组件的执行。应用程序客户端和它们的容器运行在J2EE服务器上。

    Applet容器是运行在客户端机器上的Web浏览器和Java插件的结合。

    J2EE平台由一整套服务(Services)、应用程序接口(APIs)和协议构成,它对开发基于Web的多层应用提供了功能支持,下面对J2EE中的技术规范进行简一单的描述(限于篇幅,这里只能进行简单的描述)

    由于J2EE建立在Java2平台标准版((J2SE)的基础上,所以具备了J2SE的所有优点和功能。包括“编写一次,到处可用”的可移植性、通过JDBC访问数据库、同原有企业资源进行交互的CORBA技术,以及一个经过验证的安全模型。在这些基础上,J2EE又增加TMIN(企业级Java组件)Java ServletsJava服务器页面

商户名称:上海御云信息科技有限公司

版权所有©2025 产品网