溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何操作PHP程序員開展服務治理架構

發(fā)布時間:2021-03-08 15:43:59 來源:億速云 閱讀:125 作者:TREX 欄目:開發(fā)技術

這篇文章主要介紹“如何操作PHP程序員開展服務治理架構”,在日常操作中,相信很多人在如何操作PHP程序員開展服務治理架構問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何操作PHP程序員開展服務治理架構”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

概述

SOA代表了面向服務架構,僅僅是一種概念,通過這種概念而演變出的各種各樣的服務架構都可稱為SOA架構,SOA核心的概念就是 “松耦合”。

非SOA的架構

多語言開發(fā)

如何操作PHP程序員開展服務治理架構

同語言開發(fā)

如何操作PHP程序員開展服務治理架構

服務與服務之間可能會是不同的開發(fā)語言或相同語言開發(fā),他們的調用方式依舊只可以通過http去獲取,或者比較流行的Restful Api的形式,無論是在性能與開發(fā)的過程中都是很笨的辦法。

什么是SOA的服務

如何操作PHP程序員開展服務治理架構

在現(xiàn)實世界中,服務是一種我們花費購買到的一種預期的服務。

1、(來自真實世界):你去餐館訂餐,您的訂單首先進入到柜臺,然后在廚房進行食物準備,最后服務員提供的食物。因此,為了實現(xiàn)一個餐廳訂購服務,您需要三個邏輯部門/服務協(xié)同工作(計帳,廚房和服務員)。在軟件世界同樣的方法稱為業(yè)務服務。

2、(軟件世界):你去亞馬遜訂購了一本書,有不同的服務,如支付網(wǎng)關,庫存系統(tǒng),貨運系統(tǒng)等共同完成一本書的訂購。

如何操作PHP程序員開展服務治理架構

  所有的服務是自包含的,合乎邏輯。他們就像黑盒子??傊覀儾⒉恍枰私鈽I(yè)務服務的內部工作細節(jié)。對于外部世界,它只是一個能夠使用消息交互的黑盒子。例如在“支付網(wǎng)關”業(yè)務服務獲得消息“檢查信貸”后會給出輸出:這個客戶的信貸有或沒有。對于“訂單系統(tǒng)”,“支付網(wǎng)關”的服務是一個黑盒子。

服務的主要特點是什么

A) SOA組件是松耦合的。當我們說松耦合,這意味著每一個服務是自包含單獨存在的邏輯。舉例來說,我們采取了“支付網(wǎng)關”的服務,并將它附加到不同的系統(tǒng)。

B) SOA服務是黑匣子。在SOA中,服務隱藏有內在的復雜性。他們只使用交互消息,服務接受和發(fā)送消息。通過虛擬化一個服務為黑盒子,服務變得更松散的耦合。

C) SOA服務應該是自定義: SOA服務應該能夠自己定義。

D) SOA服務維持在一個列表中: SOA服務保持在一個中央存儲庫。應用程序可以在中央存儲庫中搜索服務,并調用相應服務。

E) SOA服務可以編排和鏈接實現(xiàn)一個特定功能: SOA服務可以使用了即插即用的方式。例如,“業(yè)務流程”中有兩個服務“安全服務”和“訂單處理服務” 。從它的業(yè)務流程可以實現(xiàn)兩種類型:一,您可以先檢查用戶,然后處理訂單,或反之亦然。是的,你猜對了,使用SOA可以松散耦合的方式管理服務之間的工作流。

什么是SOA

SOA代表了面向服務的架構。 SOA是一種使用松耦合的黑盒子服務構建業(yè)務應用的體系架構,這些服務可以通過編排連接在一起以實現(xiàn)特定的功能。

什么是合同,地址和綁定?

這是三個SOA的標準術語。每個服務對外開放地址,在服務開發(fā)中進行合同約定,客戶端綁定服務進行開發(fā)調用。

  • 合同是兩方或多方之間的協(xié)議。它定義了一種客戶端如何與服務通信的協(xié)議。從技術上講,它有描述參數(shù)和返回值的方法。

  • 地址表明在哪兒能找到這種服務。地址是一個URL,它指向服務的位置。

  • 綁定是決定這個端點如何可以訪問。它決定了如何完成通信。例如,你暴露你的服務,可以使用SOAP over HTTP或通過TCP的BINARY進行訪問。因此,對于這些通信介質將被創(chuàng)建兩個綁定。
     n

什么是可重用的服務?

服務是一個自主的,可重復使用的,可發(fā)現(xiàn)的,無狀態(tài)的,有一定粒度的功能,并且是一個復合應用程序或一個組合服務的一部分。

可重復使用的服務通過業(yè)務活動標識,這個業(yè)務活動是使用服務規(guī)范(設計時合同)描述的。

一個服務約束是,包括安全性,QoS,SLA,使用策略,可以由多個運行時的合同 多個接口(WSDL中的Web服務)以及多個實現(xiàn)(代碼)定義的。

可重復使用的服務應在被管制在其從設計到運行整個企業(yè)級生命周期。其重用應通過規(guī)范流程來推動,重用應該是可測量的。

在一個SOA中如何實現(xiàn)松耦合?

實現(xiàn)松耦合一種策略是使用服務接口(WSDL中為SOAP Web服務)來限制服務之間的依賴性,對消費者隱藏服務實現(xiàn)。松耦合可以通過實施服務的功能封裝以及限制服務接口的實現(xiàn)變化影響來解決。然而,在某些時候,你需要改變接口,也不會影響服務的消費者,除了管理多個安全約束,多種傳輸,以及其他方面的考慮。

SOA的服務無狀態(tài)或有狀態(tài)?

服務應該是無狀態(tài)的。它有一個無狀態(tài)的執(zhí)行上下文,但它不會有中間狀態(tài)來等待一個事件或一個回調。狀態(tài)有關的數(shù)據(jù)的保留一定不能超出的服務的請求/響應。這是因為狀態(tài)管理消耗了大量的資源,這可能會影響服務的可重用 可伸縮性和可用性。

在RPC服務啟動后,服務一直保持沉睡狀態(tài),只有在有請求時才會喚醒,你可以稱他為無狀態(tài)或有狀態(tài)

在SOA中我們是否需要從頭開始構建系統(tǒng)?

否。如果您需要集成現(xiàn)有系統(tǒng)為業(yè)務服務,你只需要創(chuàng)建松耦合的包裝,包裝您的現(xiàn)有系統(tǒng),并以一種通用的方式暴露功能給外部世界。

其實并不需要重新構建,只需要將每個服務繼續(xù)分解,分類出對外與對內。

如何操作PHP程序員開展服務治理架構

什么是服務和組件之間的區(qū)別?

服務組件來實現(xiàn)業(yè)務功能的邏輯組件分組。組件是為實現(xiàn)服務這個目標的途徑。組件可以使用Java,C#,C,但服務將以通用格式如像Web服務方式被暴露。

說的就是我們通過RPC調用其他服務 (thrift)

到此,關于“如何操作PHP程序員開展服務治理架構”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI