成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Restful、SOAP、RPC、SOA到底有什么區別,你知道了嗎?

開發 前端
Restful(Representational State Transfer)是?種架構設計?格,提供了設計原則和約束條件,?不是架構,?滿?這些約束條件和原則的 應?程序或設計就是 Restful架構或服務。

為什么有些面試官很喜歡問這個 Restful、SOAP、RPC、SOA 之間的區別,而回答的時候,總是回答的沒有那么的好,于是就想讓阿粉給她解答一下這個內容,于是阿粉專門來寫一篇文章來進行這個解答。

什么是 Restful

Restful(Representational State Transfer)是?種架構設計?格,提供了設計原則和約束條件,?不是架構,?滿?這些約束條件和原則的 應?程序或設計就是 Restful架構或服務。

也就是說,他并不是說是一種架構,而是一種設計上的風格,就類似那種約定俗成的,阿粉最早知道這個 Restful 的時候,還是之前看過大神阮一峰的博客才學習到的。

其實想要理解Restful,那么你得先知道 Restful 的主要設計原則,那么 Restful 的主要設計原則都有哪些?

  • 資源與URI
  • 統?資源接?(HTTP?法如GET,PUT和POST)
  • 資源的表述
  • 資源的鏈接
  • 狀態的轉移

實際上,REST全稱是表述性狀態轉移,那究竟指的是什么的表述? 其實指的就是資源。

**資源與URI

這時候就會有讀者問,那這個資源又是怎么定義的呢?

這個資源實際上就相當于是一個抽象的概念,只要你這個事物,有被引用到的地方,那么他就可以定義成為一個資源,就比如我們的姓名,手機號,

  • 警察落戶需要你的姓名
  • 辦理某些會員卡需要你的姓名
  • 你在辦理會員卡的時候,需要綁定一下手機號

也就是說,你的姓名和你的手機號,都有被引用得到的地方,那么他就可以稱之為資源。

那么什么又是URI呢?

要讓一個資源可以被識別,需要有個唯一標識,在Web中這個唯一標識就是URI(Uniform Resource Identifier)。

這個對開發來說就很容易理解了,URI 就是地址

  • https://www.baidu.com/
  • https://www.taobao.com/
  • https://www.jd.com/

統?資源接?

那么什么是統一資源接口呢?

這就又得說到 Restful 架構設計?格的定義上來了,遵循的原則還是,遵循統一接口原則,統一接口包含了一組受限的預定義的操作,不論什么樣的資源,都是通過使用相同的接口進行資源的訪問。接口應該使用標準的HTTP方法如GET,PUT和POST,并遵循這些方法的語義。

如果這么說,大家我相信那是明白的非常透徹的,畢竟你看,你寫接口的時候,直接來的不就是

@PostMapping(value = "/order/create", produces = MediaType.APPLICATION_JSON_VALUE)
public JsonObjcet createOrder(){
.....
}

是不是都是這么寫的,實際上他就是一種 Restful 風格的。

至于請求的狀態碼,阿粉就不再多說什么了,相信只要是看阿粉文章的,百分之百也都明白狀態碼一般對應什么樣子的含義。

資源的表述

那么什么是資源的描述呢?

這個理解就比較簡單了,為什么這么說,你可以這樣理解,只關心你給的返回內容,不關心你內部實現。

換成比較官方的語言就是:

客戶端獲取的只是資源的表述而已。資源在外界的具體呈現,可以有多種表述(或稱為表現、表示)形式,在客戶端和服務端之間傳送的也是資源的表述,而不是資源本身。例如文本資源可以采用html、xml、json等格式,圖片可以使用PNG或JPG展現出來。

其實資源的描述阿粉覺得他就是數據展示,但是很多人也不是這么理解,畢竟每個人的理解都是不一樣的,也沒有什么標準答案,畢竟不是 1+1=2 的數學問題,不是么?

資源的鏈接

資源的鏈接,這個相對來說,也挺容易理解的,一般的,我們在項目里面,很多都是從一個鏈接去到另外一個鏈接,獲取我們的想要的資源信息,比如說,我們有一個活動,如果你想要獲取這個活動的最新詳情,那么就一定需要我們再去對這個資源進行一個獲取,實際上如果簡單來說,就是對資源做了個CRUD。

狀態的轉移

實際上,我們在看某些頁面的時候,一直在默默的接受這個狀態轉移,比如,“下一頁”,因為這個 “下一頁” 就會表示,你從當前的這個狀態,轉到下一個未知的狀態, 這實際上就是狀態的轉移。

**什么是SOAP

相對來說 SOAP 就不如 Restful 那么復雜了,需要你理解的東西沒那么多了。

簡單對象訪問協議是?種數據交換協議規范,是?種輕量的、簡單的、基于XML的協議的規范。

SOAP協議和HTTP協議?樣,都是底層的通信協議,只是請求包的格式不同?已,SOAP包是XML格式的。SOAP的消息是基于xml并封裝成了符合http協議,因此,它符合任何路由器、 防?墻或代理服務器的要求。

SOAP可以使?任何語?來完成,只要發送正確的soap請求即可,基于soap的服務可以在任何平臺?需 修改即可正常使?

**什么是RPC

RPC就是從?臺機器(客戶端)上通過參數傳遞的?式調?另?臺機器(服務器)上的?個函數或?法 (可以統稱為服務)并得到返回的結果。

RPC 會隱藏底層的通訊細節(不需要直接處理Socket通訊或Http通訊)

RPC 是?個請求響應模型。客戶端發起請求,服務器返回響應(類似于Http的?作?式)

RPC 在使?形式上像調?本地函數(或?法)?樣去調?遠程的函數(或?法)。

其實說到RPC,這個屬實是面試的時候,經常會被問到的一個地方,為什么這么說,因為有很多很多的框架,都是用的 RPC 。

比如已經進入 Apache 孵化器的 Dubbo ,還有還有SpringCloud框架,微服務全家桶。這都是比較出名的用 RPC 的框架,但是很多人就會說,別瞎扯了,人家SpringCloud 明明是用的 http ,確實,也沒啥錯誤。

spring cloud是基于spring boot 的,spring boot 實現的是http協議的rpc,算是rpc的?個?集。

所以阿粉在這里也把 SpringCloud 給算進來了。

什么是SOA

說到SOA,英文全稱是((Service-Oriented Architecture),翻譯成中文就是?向服務的架構。

這就是最經典的微服務架構了,微服務架構就是從 SOA 進化的結果。

兩者說到底都是對外提供接?的?種架構設計?式,隨著互聯?的發展, 復雜的平臺、業務的出現,導致SOA架構向更細粒度、更通過化程度發展,就成了所謂的微服務了。

通俗點來講,SOA提倡將不同應?程序的業務功能封裝成“服務”并宿主起來,通常以接?和契約的形式暴 露并提供給外界應?訪問(通過交換消息),達到不同系統可重?的?的。

SOA是?個組件模型,它能將不同的服務通過定義良好的接?和契約聯系起來。服務是SOA的基?。

所以后面就出現了這個微服務了。

今天阿粉要說的內容,就這些了,你理解了么?

文章參考

  • 《百度百科》 
  • 《RESTful Web Services》
責任編輯:武曉燕 來源: Java極客技術
相關推薦

2022-08-26 01:41:42

GPUCPU架構

2021-09-06 10:45:18

XDRMDR

2022-09-14 09:45:15

指標標簽

2012-07-25 15:45:28

ERPSCM

2024-02-26 07:36:09

lockJava語言

2025-01-15 00:00:00

存儲整數集Roaring

2022-10-31 10:03:03

2022-09-27 07:31:57

Property模式數據

2022-10-27 19:32:20

切片golang數組

2023-10-28 09:00:03

進程系統服務

2019-04-23 08:23:51

統計學機器學習人工智能

2022-11-28 14:27:17

插入意向鎖age

2024-04-12 00:00:00

localhost計算機機制

2023-07-19 21:54:02

小區扇區信號

2020-10-29 09:49:32

HarmonyOS鴻蒙安卓應用

2023-03-08 09:48:08

SpringWAR文件JAR文件

2024-03-05 18:19:07

localhostLinux數據庫

2020-08-19 08:10:11

數據分析技術IT

2024-05-27 00:00:00

localhostIPv6IPv4

2022-06-08 07:34:25

InnoDBdeleteMySQL
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人久久久| 久久久精 | 国内精品久久久久久久影视简单 | 中文字幕视频三区 | 视频一区在线观看 | 欧美日韩一卡二卡 | 伊人二区 | 日本亚洲一区 | 午夜精品久久久久久不卡欧美一级 | 国产免费一级一级 | 在线一区 | 亚洲精品久久久久中文字幕欢迎你 | 日韩美女在线看免费观看 | 一区二区三区欧美在线 | 免费毛片网站 | 欧美日韩在线观看视频 | 欧美日韩亚洲视频 | 国产福利久久 | 人和拘一级毛片c | 69亚洲精品 | 国产电影一区二区在线观看 | 亚洲精品www. | 日日碰狠狠躁久久躁婷婷 | 亚洲人成在线播放 | 久久精品视频9 | 91国内精品久久 | 久久久久久国产免费视网址 | 精品国产乱码久久久久久久久 | 91色视频在线观看 | 国产日韩亚洲欧美 | 超碰在线97国产 | 涩涩视频在线观看 | 国产精品免费视频一区 | 精品在线| 亚洲精品一区二区网址 | 一级看片免费视频囗交动图 | av看片网| 最近中文字幕在线视频1 | 久久久久久国产免费视网址 | 久久久久亚洲精品中文字幕 | 中文字幕日韩欧美一区二区三区 |