好程式設計師雲端計算培訓分享雲端計算中SOA是什麼?
好程式設計師雲端計算培訓分享雲端計算中SOA是什麼?雲端計算中SOA是什麼?SOA 是面向服務的架構,即企業的 IT 系統是由服務組成的,也即企業的各個應用系統是由許多標準的服務件“組裝”起來的,組成應用系統中的各個服務之間是一種非常松耦合的關係。
Gartner 公司在 1996 年進一步提出了 SOA 的概念,意為面向服務的架構,本質上是面向服務的思想在企業 IT 架構方面的應用。面向服務的思想,是物件導向思想之後的一種新的思想模式,其核心特徵就是以松耦合、粗粒度的服務單元來構建軟體。作為一種思想,SOA 不涉及任何具體的實現技術細節,但是思想終歸要落地才會帶來社會效益。
人們發現,企業服務匯流排(簡稱為 ESB)是實現 SOA 的主要技術之一,於是 ESB 也就成為 SOA 的核心技術基礎。當然,不用 ESB 也不能說你的系統就不是 SOA,比如現在流行的微服務就是 SOA 的一種具體實現,它採用容器對服務打包。SOA 所實現產品的核心任務是管理企業中的服務單元,具體的任務可分解為:服務單元的登記、服務單元的呼叫、服務單元的執行、服務單元的部署、使用者管理介面,以及安全控制等。
服務與模組的主要區別在於:模組相當於汽車發動機的零配件,而服務就相當於發動機本身,發動機可以獨立運轉,而零件就不行。
函式一般由開發語言編譯器的公司提供,如 C 語言編譯器有微軟的 Visual C++、Borland 公司的 Borland C、開源組織提供的 GCC 等,框架一般由軟體開發廠商或開源組織提供,如 Django、Drupal、JSON、Spring、jQuery 等,而服務一般由運營商提供。
企業的軟體應用系統和服務的關係像極了人類社會中的專案和人的關係,企業要實施一個專案,先去人才網站招聘各種人員組建團隊,然後團隊成員各司其職,共同完成專案。
求職者事先要在人才招聘網站註冊併發布簡歷,然後等待招聘電話。那麼在 SOA 中,也有一個類似人才網站的機構,服務必須先在這個機構裡註冊,當有需求的時候,其他服務或者應用系統就會在這個機構裡搜尋能滿足需求的服務,並且呼叫這些服務來完成某個任務。服務像孫悟空一樣具備分身術,即同一個服務能分身出很多個體,這些個體分別被其他服務呼叫,這一點又與現實生活中的求職者不同。
服務是無狀態的,即服務在被呼叫前後本身沒有變化,且同一個服務允許同時在多臺計算機上執行,這樣就能輕鬆實現高可用性計算及負載均衡叢集,最終我們可以想象一下,企業的很多臺伺服器上執行著各種各樣的標準服務,眾多的應用系統對應各自的服務呼叫關係描述表,“組裝”一個應用軟體由公司文員即可快速輕鬆地完成。
在雲端,由於應用繁多且由一家公司運營,所以雲運營公司是採用 SOA 的最佳場所。可以預計,在雲端計算時代,SOA 將得到廣泛應用。在業界,也有人認為雲端計算將是 SOA 的終結者,這個觀點把不同層次的東西混為一談,雲端計算不是新的技術和思想,它只是人們使用計算資源的一種模式,而 SOA 是一種全新的軟體構架思想。
目前部署 SOA 的應用環境有開源產品和商業產品,開源產品有 WSO2、Dubbo 和 Mule ESB,後者側重於企業服務匯流排,不是一個完整的 SOA 套件,這三個開源產品是用 Java 語言開發的,另外一個 ZATO 開源專案是採用 Python 語言開發的;商業產品有 Oracle SOA 套件和 IBM SOA 基礎棧等。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2703621/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 好程式設計師雲端計算培訓分享雲端計算中微服務是什麼?程式設計師微服務
- 好程式設計師雲端計算培訓分享雲端計算必會的Docker容器命令程式設計師Docker
- 好程式設計師雲端計算培訓分享2020年雲端計算的發展趨勢程式設計師
- 好程式設計師雲端計算培訓分享學了雲端計算將來就業怎麼樣?程式設計師就業
- 好程式設計師雲端計算培訓分享msyql高階操作程式設計師
- 好程式設計師雲端計算教程分享入門雲端計算要精通學習什麼?程式設計師
- 好程式設計師雲端計算培訓分享Kubernetes基礎模組概述程式設計師
- 好程式設計師雲端計算培訓分享msyql知識點講解程式設計師
- 今天好程式設計師雲端計算教程分享雲端計算是什麼,和Linux什麼關係程式設計師Linux
- 雲端計算教程學習入門影片課件:雲端計算中SOA是什麼?
- 好程式設計師雲端計算培訓分享Linux Shell常見命令總結大全程式設計師Linux
- 好程式設計師雲端計算培訓分享伺服器叢集cluster講解程式設計師伺服器
- 【雲端計算小知識】什麼是雲端計算?雲端計算特點是什麼?
- 好程式設計師雲端計算教程分享雲服務和雲端計算的區別有那些程式設計師
- 好程式設計師雲端計算教程分享Linux雲端計算面試常見問題一程式設計師Linux面試
- 好程式設計師雲端計算教程分享Linux雲端計算面試常見問題二程式設計師Linux面試
- 好程式設計師雲端計算教程分享Linux雲端計算面試常見問題三程式設計師Linux面試
- 好程式設計師雲端計算學習路線分享雲端計算之檔案查詢程式設計師
- 大資料和雲端計算的關係是什麼?-千鋒深圳雲端計算培訓大資料
- 雲端計算工程師培訓須知工程師
- 好程式設計師雲端計算培訓分享Linux檔案許可權簡單說明程式設計師Linux
- 什麼是雲端計算雲端計算能幹什麼?雲端計算學習筆記工具素材筆記
- 學習雲端計算需要培訓嗎?雲端計算需要學習什麼內容?
- 什麼是雲端計算?
- 雲端計算技術是什麼?雲端計算有什麼優勢?
- 新手必備 最新雲端計算學習路線圖-好程式設計師雲端計算程式設計師
- 什麼是雲端計算?雲端計算學習方向有哪些?
- 好程式設計師分享新手學習雲端計算的規劃程式設計師
- 好程式設計師雲端計算教程分享Shell程式設計之for迴圈結構程式設計師
- 雲端計算管理的功能是什麼?Linux雲端計算學習Linux
- 什麼叫雲端計算?雲端計算通俗解釋
- 好程式設計師雲端計算教程分享Mysql技術知識點程式設計師MySql
- 好程式設計師雲端計算學習路線分享:關於NFS程式設計師NFS
- 好程式設計師雲端計算教程分享if巢狀功能語法解析程式設計師巢狀
- 好程式設計師雲端計算學習路線分享檢視程式process程式設計師
- 什麼是雲端計算?雲端計算適合哪些人學習?
- 雲端計算和Linux什麼關係?linux雲端計算Linux
- 雲端計算開發教程,雲端計算能幹什麼?