国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

什么是分布式應用系統(轉)

2019-11-17 03:55:50
字體:
來源:轉載
供稿:網友
  在信息產業高速發展的今天,企業間的競爭將更加激烈。隨著規模的不斷擴大和業務的不斷更新,企業迫切需求完整的分布式解決方案,用于管理復雜的異構環境,實現不同硬件設備、軟件系統、網絡環境及數據庫系統之間的完整集成。

  

      縱觀人類計算機的發展歷史,每隔十年至十五年,信息產業就會發生周期性的變革, 1950 年至 1970 年期間,企業主要采用大型主機-終端的體系結構,企業應用系統則采用單一、集中的方式為用戶提供資源共享服務。 80 年代初期,開放系統與關系型數據庫管理系統被企業大量采用,有別于集中式系統,應用程序邏輯分散在主從兩端。隨著 Windows 的普及, 90 年代則是圖形化的應用時代, Client/Server 體系結構也被廣泛采用。 90 年代后期,信息產業出現了分布式對象技術,應用程序可以分布在不同的系統平臺上,通過分布式技術實現異構平臺間對象的相互通信。將企業已有系統集成于分布式系統,可以極大地提高企業應用系統的擴展性。 90 年代末出現的多層分布式應用為企業進一步簡化應用系統的開發指明了方向。

  

      在傳統的 Client/Server 結構中,應用程序邏輯通常分布在客戶端和服務器兩端,客戶端發出數據資源訪問請求,服務器端將結果返回客戶端。 Client/Server 結構的缺陷是,當客戶端數目激增時,服務器的性能將會因為無法進行負載平衡而大大下降。 而一旦應用的需求發生變化,客戶端和服務器端的應用程序則都需要修改,這樣給應用的維護和升級帶來了極大的不便,而且大量數據的傳輸也增加了網絡的負載。為了解決 Client/Server 存在的問題,企業只有向多層分布式應用轉變。

     
    在多層分布式應用中,客戶端和服務器之間可以加入一層或多層應用服務程序,這種程序稱為“應用服務器” (application Server) 。開發人員可以將企業應用的商業邏輯放在中間層服務器上,而不是客戶端,從而將應用的業務邏輯與用戶界面隔離開,在保證客戶端功能的前提下,為用戶提供一個瘦的 (thin) 界面。這意味著如果需要修改應用程序代碼,則可以只在一處 ( 中間層服務器上 ) 修改,而不用修改成千上萬的客戶端應用程序。 從而使開發人員可以專注于應用系統核心業務邏輯的分析、設計和開發,簡化了企業系統的開發、更新和升級工作,極大增強了企業應用的伸縮性和靈活性。

  
    當企業需要建立基于 Web 的商業應用系統時,多層分布式體系結構同樣提供了強大優勢,為基于 Web 的商業應用提供了“瘦客戶”的體系結構,使基于瀏覽器的客戶可以與 Intranet 資源進行有效交互,并且不需要在客戶端進行復雜的應用配置工作。多層分布式解決方案在異構平臺間架起了橋梁,可以使基于 Web 的商業應用與企業已有系統集成在一起。

  

      目前,在我國的企業中,大量采用的還是 Client/Server 體系結構,而在西方發達國家,企業由傳統的應用系統向多層分布式應用系統的轉變已經成為業界主流。相信在我國,多層分布式系統將得到更為廣泛的應用。

  

多層分布式應用帶來的挑戰

  

      盡管多層分布式體系結構為企業提供了極大優勢,但比起傳統的 Client/Server 方式,開發多層分布式應用具有更大的難度,給開發人員帶來了新的技術挑戰。主要包括了以下三個方面:

  

1.     分布式對象標準的多樣化

  

      企業要構建多層分布式系統,必須遵循分布式的工業標準,基于什么樣的標準直接影響到企業應用系統的開放性和可擴展性。目前分布式對象的標準主要有三種: Microsoft 的 DCOM 、 Sun Microsystems 的 EnterPRise javaBeans/RMI 以及 OMG(Object Management Group) 組織的 CORBA(Common Object Request Broker Architecture) 。 DCOM 是基于 Windows 環境的分布式對象標準,因此支持的平臺種類有限。 RMI 與 Enterprise JavaBean 是以 Java 語言為主體的分布式對象架構,適合大型企業的跨平臺需求,但現實的應用系統環境一般是由多種不同的程序語言建立起來的,只依賴一種程序語言構建的企業應用是很少見的。 CORBA 是由 800 多個大型軟、硬件公司參與的 OMG 組織所制定的分布式對象標準,獲得 IBM 、 Sun Microsystems 、 Oracle 、 Sybase 、 Novell 、 Netscape 等大型公司的支持, CORBA 標準實現了不同平臺之間對象的通信及互操作,軟件供應商只要遵循應用對象與 ORB 間通信的 IDL(Interface Definition Language) ,便能夠以對象的形式提供服務或獲得服務, ORB 使開發人員完全不需要考慮異構平臺、不同的通信協議或不同程序語言造成的差異,而專注于應用邏輯的開發。可見, CORBA 提供了開放、靈活的分布式標準,適于企業構建多層分布式應用系統。

  

2.     多層分布式應用的開發是很復雜的

  

      如果用傳統方式開發多層分布式應用,則需要開發人員具有較深的計算機系統級知識,需要掌握諸如并發性、安全性、可伸縮性及事務處理等各個方面的知識。而且需要實現對系統資源訪問的有效管理,如對線程、內存、數據庫連接、網絡連接的管理。而這些復雜工作極大地耗費了開發人員的精力,限制了開發工作的進展。而企業應用系統的開發更多地要求開發人員專注于商業邏輯方面的開發,而不是在系統級開發上浪費更多時間。

  

3.     分布式應用的分發、管理也是一個挑戰

  

      大多數的分布式應用是由成百上千的組件組成的,而在分發時,每一個組件都有屬性需要進行配置。通常,對組件屬性的配置方式依賴于組件所在的平臺。 因此,應用被分發后,如何管理分散的組件將是一個挑戰。管理者需要確保應用的組件能夠正確運行、可以位于企業網內的任何機器上,并能及時發現處理錯誤 ( 包括系統錯誤、網絡中斷、應用錯誤等情況 ) 。

  

      傳統意義上的網絡系統管理 ( 比如: SNMP) 只能通過分析主機的狀態,獲得應用程序運行的情況,但對于分布式應用系統來說,一個應用并非運行于某一臺主機,因此,管理者需要管理整個網絡的狀態,這就需要有恰當工具的支持。

  

多層分布式應用的需求

  

    開發企業多層分布式應用,通常有以下方面的需求:

  

易于開發
  

      雖然多層分布式體系結構要求有較深的計算機系統級知識作為基礎 ( 比如:數據庫、事務處理、網絡安全、 CORBA 技術等 ) ,但對于 IT 開發人員來說,要求在不用深入了解系統底層復雜技術的情況下,能夠在一個友好的可視化集成開發環境 (IDE) 中,快速、容易地開發出功能強大的多層分布式應用系統。

  

簡化分發、管理工作
  

      開發人員要求能夠在一個集成開發環境中測試、修改分布式應用程序,以提高應用的性能,并可以實現在同一環境中對應用的分發、管理。由于許多應用包括了成千上萬分布于企業各處的組件,因此,需要一個集中化的管理工具,用于管理、控制分布式應用,并實現錯誤檢測、更正的功能。

  

企業應用的魯棒性要求
  

    一個完善的企業分布式多層應用,應該滿足事務處理、安全管理、容錯、負載平衡、可伸縮性、高性能方面的要求。

  

具有開放的、基于工業標準的體系結構
  

      企業需要的是開放的、基于工業標準的解決方案,可以實現與其他符合標準的系統進行交互。

  

可以實現與各種數據庫及已有系統的集成
  

       企業分布式應用必須能夠訪問企業的數據資源,而企業數據通常存儲在當前流行的大型數據庫上 ( 如: Oracle 、 Sybase 等 ) ,或通過 TP Monitor( 如: IBM CICS 、 BEA Tuxedo) 訪問,因此要求企業分布式系統能夠與數據庫及已有系統集成在一起。

  

支持不同平臺環境
  

      企業多層分布式應用需要支持不同的平臺環境,服務器一端應該支持 Windows NT 或 UNIX 平臺,而且不同平臺的客戶都可以訪問服務器上的應用,包括: HTML 、 Java applets 、 Java 應用、 Dynamic HTML 、 C++ 應用等。

  

企業應用服務器

  

      基于上述原因,當企業向多層分布式應用轉變時,需要應用服務器 (Application Server) 的支持,從而可以將不同的應用技術集成在一起,使多層分布式應用的開發、分發、管理變得更加容易。現在已經有很多企業使用了應用服務器技術,也極大地增強了企業應用的性能。但在我國處于應用中的應用服務器技術,還不能完全滿足企業建立多層分布式應用的需求,這些應用服務器主要分為以下兩類:

  

基于 Web 的應用服務器
  

      基于 Web 的應用服務器一般提供了基于 Web 的 Interner 應用的開發環境,適于建立基于 Web 的 Client/Server 應用系統。在這種體系下, Web 應用服務器通常運行在 Web Server 上,用來處理客戶請求。通常用 ODBC 和 JDBC 連接數據庫。這種類型的應用服務器一般易于使用,并且支持基于 EJB(Enterprise JavaBeans) 的服務器應用程序開發。但這種應用服務器存在的缺陷有:不支持事務處理、安全性差、對已有交易系統支持有限、性能較低。

        

基于中間件的應用服務器
  

      基于中間件的應用服務器通過與已有系統 ( 如: TP Monitors) 進行集成,可以為企業提供更強大的功能,包括:事務處理、安全管理、容錯、負載平衡等,但多數解決方案都是基于 Client/Server 體系結構的,或僅限于三層體系結構,不適于建立分布式的 Web 應用,而且沒有一個有效的開發管理環境。

  

注: 負載均衡是由多臺服務器以對稱的方式組成一個服務器集合,每臺服務器都具有等價的地位,都可以單獨對外提供服務而無須其他服務器的輔助。通過某種負載分擔技術,將外部發送來的請求均勻分配到對稱結構中的某一臺服務器上,而接收到請求的服務器獨立地回應客戶的請求。均衡負載能夠平均分配客戶請求到服務器列陣,籍此提供快速獲取重要數據,解決大量并發訪問服務問題。這種群集技術可以用最少的投資獲得接近于大型主機的性能。網絡負載均衡的優點:第一、網絡負載均衡技術保證即使是在負載很重的情況下,服務器也能做出快速響應;第二、網絡負載均衡對外只需提供一個 ip 地址 ( 或域名 ) ;第三、當網絡負載均衡中的一臺或幾臺服務器不可用時,服務不會中斷。網絡負載均衡自動檢測到服務器不可用時,能夠迅速在剩余的服務器中重新指派客戶機通訊。這項保護措施能夠幫助你為關鍵的業務程序提供不中斷的服務,并可以根據網絡訪問量的增加來相應地增加網絡負載均衡服務器的數量;第四、網絡負載均衡可在普通的計算機上實現。



本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/deantry119/archive/2009/12/28/5089598.aspx
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金寨县| 清水河县| 莱阳市| 云浮市| 全椒县| 新闻| 江源县| 泽州县| 平度市| 长葛市| 库尔勒市| 泸州市| 英超| 宁河县| 绥芬河市| 临潭县| 二连浩特市| 班玛县| 凤山市| 乌拉特中旗| 广丰县| 寻乌县| 大丰市| 娄烦县| 镇远县| 饶河县| 凤山市| 沈阳市| 蒙山县| 马鞍山市| 阿克| 乳源| 镇原县| 武宁县| 营口市| 曲沃县| 宁波市| 西充县| 建平县| 长春市| 伊金霍洛旗|