亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

PHP程序員如何簡單的開展服務(wù)治理架構(gòu)(三)

Dionysus_go / 2858人閱讀

摘要:是一種使用松耦合的黑盒子服務(wù)構(gòu)建業(yè)務(wù)應(yīng)用的體系架構(gòu),這些服務(wù)可以通過編排連接在一起以實現(xiàn)特定的功能。在一個中如何實現(xiàn)松耦合實現(xiàn)松耦合一種策略是使用服務(wù)接口中為服務(wù)來限制服務(wù)之間的依賴性,對消費者隱藏服務(wù)實現(xiàn)。

服務(wù)治理所治理的服務(wù)需要合理的部署與管理,本章我們講一下SOA(面向服務(wù)架構(gòu)),本人語言文筆不好,所以本章內(nèi)容使用問答模式,參考了 [SOA面試題(http://www.jdon.com/soa/soa-i...] 的面試題,通過對此站復(fù)雜的描述進行簡單的講解。

概述

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

非SOA的架構(gòu) 多語言開發(fā)

同語言開發(fā)

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

什么是SOA的服務(wù)

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

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

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

  所有的服務(wù)是自包含的,合乎邏輯。他們就像黑盒子??傊?,我們并不需要了解業(yè)務(wù)服務(wù)的內(nèi)部工作細節(jié)。對于外部世界,它只是一個能夠使用消息交互的黑盒子。例如在“支付網(wǎng)關(guān)”業(yè)務(wù)服務(wù)獲得消息“檢查信貸”后會給出輸出:這個客戶的信貸有或沒有。對于“訂單系統(tǒng)”,“支付網(wǎng)關(guān)”的服務(wù)是一個黑盒子。

服務(wù)的主要特點是什么

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

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

C) SOA服務(wù)應(yīng)該是自定義: SOA服務(wù)應(yīng)該能夠自己定義。

D) SOA服務(wù)維持在一個列表中: SOA服務(wù)保持在一個中央存儲庫。應(yīng)用程序可以在中央存儲庫中搜索服務(wù),并調(diào)用相應(yīng)服務(wù)。

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

什么是SOA

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

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

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

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

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

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

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

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

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

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

在一個SOA中如何實現(xiàn)松耦合?
實現(xiàn)松耦合一種策略是使用服務(wù)接口(WSDL中為SOAP Web服務(wù))來限制服務(wù)之間的依賴性,對消費者隱藏服務(wù)實現(xiàn)。松耦合可以通過實施服務(wù)的功能封裝以及限制服務(wù)接口的實現(xiàn)變化影響來解決。然而,在某些時候,你需要改變接口,也不會影響服務(wù)的消費者,除了管理多個安全約束,多種傳輸,以及其他方面的考慮。
SOA的服務(wù)無狀態(tài)或有狀態(tài)?
服務(wù)應(yīng)該是無狀態(tài)的。它有一個無狀態(tài)的執(zhí)行上下文,但它不會有中間狀態(tài)來等待一個事件或一個回調(diào)。狀態(tài)有關(guān)的數(shù)據(jù)的保留一定不能超出的服務(wù)的請求/響應(yīng)。這是因為狀態(tài)管理消耗了大量的資源,這可能會影響服務(wù)的可重用 可伸縮性和可用性。

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

在SOA中我們是否需要從頭開始構(gòu)建系統(tǒng)?
否。如果您需要集成現(xiàn)有系統(tǒng)為業(yè)務(wù)服務(wù),你只需要創(chuàng)建松耦合的包裝,包裝您的現(xiàn)有系統(tǒng),并以一種通用的方式暴露功能給外部世界。

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

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

說的就是我們通過RPC調(diào)用其他服務(wù) (thrift)

預(yù)告

看到這里大概了解了SOA,這個時候我透露一個秘密,SOA其實還有另外一個名字叫“服務(wù)治理”,是的,就是我們一直在講的服務(wù)治理。下一章回到正題,講一下服務(wù)治理實現(xiàn)

PHP程序員如何簡單的開展服務(wù)治理架構(gòu)(一)
https://segmentfault.com/a/11...

PHP程序員如何簡單的開展服務(wù)治理架構(gòu)(二)
https://segmentfault.com/a/11...

本猿人寫了一個服務(wù)治理的框架
https://github.com/CrazyCodes...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/28363.html

相關(guān)文章

  • PHP序員如何簡單開展服務(wù)治理架構(gòu)(二)

    摘要:服務(wù)治理治理的絕筆是服務(wù),在一家公司有玩各種語言的程序員,如何去統(tǒng)一管理他們開發(fā)的服務(wù),這是一個問題。請求程序就是一個客戶機,而服務(wù)提供者就是一個服務(wù)器。在服務(wù)器端,進程保持睡眠狀態(tài)直到調(diào)用信息到達為止。 服務(wù)治理 治理的絕筆是服務(wù),在一家公司有玩各種語言的程序員,如何去統(tǒng)一管理他們開發(fā)的服務(wù),這是一個問題。 上一章主要講了下服務(wù)治理需要什么,如何實現(xiàn),這章我們詳細的肢解一下服務(wù)治理的...

    wing324 評論0 收藏0
  • PHP序員如何簡單開展服務(wù)治理架構(gòu)(一)

    摘要:管理這些服務(wù)方案則叫服務(wù)治理。協(xié)議假定某些傳輸協(xié)議的存在,如或,為通信程序之間攜帶信息數(shù)據(jù)。請求程序就是一個客戶機,而服務(wù)提供程序就是一個服務(wù)器。在服務(wù)器端,進程保持睡眠狀態(tài)直到調(diào)用信息到達為止。 不涉及其他的語言及工具,我們從PHP本身來談如何實現(xiàn)服務(wù)治理 本猿人已經(jīng)寫好的服務(wù)治理 https://github.com/CrazyCodes... 治理什么? 這個專業(yè)名詞很容易發(fā)現(xiàn)...

    superPershing 評論0 收藏0
  • 華為數(shù)字化轉(zhuǎn)型,你為什么就學(xué)不會?

    摘要:一引言華為數(shù)字化轉(zhuǎn)型的邏輯和方法,看起來似乎并不非常復(fù)雜。華為在年提出實現(xiàn)全聯(lián)接的智能華為,成為行業(yè)標桿的數(shù)字化轉(zhuǎn)型目標。但是,華為的數(shù)字化轉(zhuǎn)型之道真的好學(xué)嗎其實不然。華為真正提出數(shù)字化轉(zhuǎn)型,是在年。一、引言華為數(shù)字化轉(zhuǎn)型的邏輯和方法,看起來似乎并不非常復(fù)雜。筆者將《華為.數(shù)字化轉(zhuǎn)型必修課》課程的主要內(nèi)容,概括為一個愿景、三大目標、四個基礎(chǔ)、五大內(nèi)容、三大要求、六大案例,用下圖來表示:?一個...

    不知名網(wǎng)友 評論0 收藏0
  • 明星分分合合洪荒點擊量,微博Mesh服務(wù)化改造如何支撐?(附PPT下載)

    摘要:為了解決這一系列問題,微博從年開發(fā)了語言的框架,并基于此完成了服務(wù)化改造。這些經(jīng)歷之下微博也積累了一套服務(wù)治理型的服務(wù)化體系。的版,所要解決的是微博平臺內(nèi)部服務(wù)之間的調(diào)用,因此協(xié)議時,其實并沒有考慮到跨語言的問題,用的是對比較友好的。 showImg(https://segmentfault.com/img/remote/1460000012601596?w=1080&h=606); ...

    ShowerSun 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<