服务热线:

13928851055

KAIYUN科技 | 大数据与人工智能 基础软件领导者

赋能数据未来,引领AI与大数据创新

KAIYUN(中国大陆)官方网站-创造最伟大的开云

企业新闻

第一讲分布式技术简介 展示系统首页

作者:小编 点击: 发布时间:2025-08-24 13:35

  

第一讲分布式技术简介  展示系统首页(图1)

  分布式系统:系统软件运行在通过网络相连的一组松散的集成在一起的处理器上。

  客户机/服务器结构简称C/S结构或称两层结构,由服务器提供应用(数据)服务,多台客户机进行连接。如下图所示:

  三层次客户机/服务器结构是在常规客户机/服务器结构上提出的,系统在客户机和数据库服务器间添加一个应用服务器。

  在当前Internet/Intranet领域,“浏览器/服务器”结构是当前非常流行的客户机/服务器结构,简称B/S结构。如下图所示。

  每一个分布的实体是一个对象,它给其它对象提供服务,也接收来自其他对象的服务;

  作为一个逻辑模型来构造和组织系统。在这种情况下,要考虑如何提供应用功能,把功能按照服务或服务组合的形式给出;

  作为实现客户机-服务器系统的灵活的方法。系统的逻辑模型是客户机-服务器模型,但无论客户机还是服务器都被当作分布式对象通过软件总线进行通信。

  调用桩的结果返回到ORB中,ORB然后通过IDL框架调用需要的对象,IDL框架连接接口到服务的实现。

  COM对象通过接口来显示功能。接口是COM对象与外部世界的一个绑定约定。

  ActiveX是OLE技术和COM技术在Internet网上的一个扩展.但是它的内容更多,它还组成了一系列用来产生丰富的Internet网和多媒体服务.

  将OLE控件扩展到internet。如一个页面包含ActiveX控件,该控件可以自动下载到用户端。

  分布式组件对象模型(DCOM或ActiveX/DCOM):被称为网络OLE,是二进制的COM对象在局域,广域网和Internet上的扩展.

  COM能够使客户在本地处理中透明地访问库中的对象,DCOM允许在远程处理中透明地访问对象。(DCOM的功能实现使得程序员不必编写网络代码,或仅仅知道如何编写网络代码)

  DCOM基于 (RPC--- remote procedure call )工作,它不是一种编程语言,而是一种规范,一种服务,是一种高级网络协议。

  Java语言支持通信的最基本机制是Socket. 但是Socket要求客户和服务器在应用程序级上对交换信息编码的协议达成一致.

  RPC把通信接口抽象到子程序级,而不是直接与 Socket打交道,但由于不涉及对象,在分布式运算中效果不好.

  1. Stub就是代表远程对象的客户方代理,定义远程对象版本所支持的所有接口.

  3. RRL负责维护不与具体Stub或Skeleton模型相关的独立引用协议.这个灵活性使RRL的改变不会影响另外两层.

  1. EJB将成为用Java语言开发分布式的、面向对象的企业应用系统的标准构件体系结构,EJB使得通过组合构件得到分布式应用成为可能

  2. EJB不需要应用开发人员了解底层的事务处理细节,状态管理,多线程,资源共享管理,以及其它底层API细节.

  1. 客户端的JavaBeans容器可以根据JavaBeans的属性,方法,事件的定义在设计时或运行时对Java Beans进行操作. 一般JavaBeans是可视化的构件. 一个标准的JavaBeans是一个客户端构件,在运行时不能被其它客户机程序存取或操作

  2. EJB没有用户界面,并完全位于服务器端,EJB可以由多个JavaBeans组成.

  3. EJB可以和远程的客户程序端通信,并提供一定的功能. 如果不和客户端程序交互,EJB一般不执行具体的功能.

  1. 一个CORBA客户机(用CORBA支持的语言些的程序),可以存取基于CORBA的EJB服务器上的构件;

  2. 一个客户机在一个事务过程中可以同时调用CORBA的EJB服务器对象;

  在网络计算环境中利用Java的最好途径是由EJB提供服务器端的构件,而由JavaBeans提供客户端构件.

  CORBA最大的特点是语言中性和跨平台.可以跨越不同网络,不同机器和不同操作系统,实现分布对象之间的互操作.整体功能最强.

  Java提出了一个概念清晰,结构紧凑的分布计算模型和构件互操作方法,为构件应用开发提供了相当的灵活性,使用上比CORBA方便.但是没有提供分布对象事物管理等服务.

  微软结合ActiveX/DCOM的开发,配套提出了自己的事务服务器(MTS)和消息队列服务器,加之asp 的使用,以及wizard的可视化编程环境,倍受业界的欢迎.

  目前,只有OMG的技术能够支持大型异构分布式应用的开发,Microsoft的技术尚不能Kaiyun胜任。

  CORBA技术与Java技术趋于结合,CORBA的互操作性与Java的可移植可移动性将使分布对象技术达到新的高度。

  J2EE是一种利用Java 2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。

  J2EE技术的基础就是核心Java平台或Java 2平台的标准版,J2EE不仅巩固了标准版中的许多优点,例如“编写一次、随处运行”的特性、方便存取数据库的JDBC API、CORBA技术以及能够在Internet应用中保护数据的安全模式等等,同时还提供了对 EJB(Enterprise JavaBeans)、Java Servlets API、JSP(Java Server Pages)以及XML技术的全面支持。其最终目的就是成为一个能够使企业开发者大幅缩短投放市场时间的体系结构。

  J2EE体系结构提供中间层集成框架。通过提供统一的开发平台,J2EE降低了开发多层应用的费用和复杂性。

  可伸缩性: 企业必须要选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于J2EE平台的应用程序可被部署到各种操作系统上。

  J2EE应用程序可以是基于web方式的,也可以是基于传统方式的(应用客户端程序和applets)

  正如下图所示的客户层那样,web层可能包含某些 JavaBean 对象来处理用户输入,并把输入发送给运行在业务层上的enterprise bean 来进行处理。

  业务层代码的逻辑用来满足银行,零售,金融等特殊商务领域的需要,由运行在业务层上的enterprise bean 进行处理. 下图表明了一个enterprise bean 是如何从客户端程序接收数据,进行处理(如果必要的话), 并发送到EIS 层储存的,这个过程也可以逆向进行。

  会话(session) beans:会话bean 表示与客户端程序的临时交互. 当客户端程序执行完后, 会话bean 和相关数据就会消失.

  实体(entity) beans:实体bean 表示数据库的表中一行永久的记录. 当客户端程序中止或服务器关闭时, 就会有潜在的服务保证实体bean 的数据得以保存.

  这种基于组件,具有平台无关性的J2EE 结构使得J2EE 程序的编写十分简单,因为业务逻辑被封装成可复用的组件,并且J2EE 服务器以容器的形式为所有的组件类型提供后台服务.

  容器服务:容器设置定制了J2EE服务器所提供的内在支持,包括安全,事务管理,JNDI(Java Naming and Directory Interface)寻址,远程连接等服务,以下列出最重要的几种服务:

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

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

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

  JDBC(Java Database Connectivity): JDBC API为访问不同的数据库提供了一种统一的途径,象ODBC一样,JDBC对开发者屏蔽了一些细节问题,另外,JDBC对数据库的访问也具有平台无关性。

  JNDI(Java Name and Directory Interface): JNDI API被用于执行名字和目录服务。它提供了一致的模型来存取和操作企业级的资源、本地文件Kaiyun系统,或应用服务器中的对象。

  EJB(Enterprise JavaBean): J2EE技术之所以赢得广泛重视的原因之一就是EJB。它们提供了一个框架来开发和实施分布式商务逻辑,由此很显著地简化了具有可伸缩性和高度复杂的企业级应用的开发。EJB规范定义了EJB组件在何时如何与它们的容器进行交互作用。容器负责提供公用的服务,例如目录服务、事务管理、安全性、资源缓冲池以及容错性。但这里值得注意的是,EJB并不是实现J2EE的唯一途径。正是由于J2EE的开放性,使得有的厂商能够以一种和EJB平行的方式来达到同样的目的。

  RMI(Remote Method Invoke): 正如其名字所表示的那样,RMI协议调用远程对象上方法。它使用了序列化方式在客户端和服务器端传递数据。RMI是一种被EJB使用的更底层的协议。

  Java IDL/CORBA: 在Java IDL的支持下,开发人员可以将Java和CORBA集成在一起。他们可以创建Java对象并使之可在CORBA ORB中展开, 或者他们还可以创建Java类并作为和其它ORB一起展开的CORBA对象的客户。后一种方法提供了另外一种途径,通过它Java可以被用于将你的新的应用和旧的系统相集成。

  JSP (Java Server Pages): JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。

  Java Servlet: Servlet是一种小型的Java程序,它扩展了Web服务器的功能。作为一种服务器端的应用,当被请求时开始执行,这和CGI很相似。Servlet提供的功能大多与JSP类似,不过实现的方式不同。JSP通常是大多数HTML代码中嵌入少量的Java代码,而servlets全部由Java写成并且生成HTML。

  XML(Extensible Markup Language): XML是一种可以用来定义其它标记语言的语言。它被用来在不同的商务过程中共享数据。XML的发展和Java是相互独立的,但是,它和Java具有的相同目标正是平台独立性。通过将Java和XML的组合,您可以得到一个完美的具有平台独立性的解决方案。

  JMS(Java Message Service): MS是用于和面向消息的中间件相互通信的应用程序接口(API)。它既支持点对点的域,有支持发布/订阅(publish/subscribe)类型的域,并且提供对下列类型的支持:经认可的消息传递,事务型消息的传递,一致性消息和具有持久性的订阅者支持。JMS还提供了另一种方式来对您的应用与旧的后台系统相集成。

相关新闻
最新产品
在线客服
联系方式

热线电话

13928851055

上班时间

周一到周五

公司电话

13928851055

二维码
线