共計 1657 個字符,預計需要花費 5 分鐘才能閱讀完成。
這篇文章跟大家分析一下“微服務與 API 的區別有什么”。內容詳細易懂,對“微服務與 API 的區別有什么”感興趣的朋友可以跟著丸趣 TV 小編的思路慢慢深入來閱讀一下,希望閱讀后能夠對大家有所幫助。下面跟著丸趣 TV 小編一起深入學習“微服務與 API 的區別有什么”的知識吧。
微服務是由一家公司提供的一個小的、單一的服務。它源自連接許多小型服務而不是擁有一項大型服務的分布式計算體系結構。可以通過應用程序編程接口(API)交付微服務。
API 是請求者與主機之間進行通信的一種方法,通??梢酝ㄟ^ IP 地址進行訪問。API 可以向用戶傳達多種類型的信息,例如:
要共享的數據要提供的功能
簡而言之,談論微服務必須與軟件的體系結構做更多的事情,而 API 與如何將微服務公開給消費者有關。
微服務是如何運作的?
微服務是從公司的大型單一服務的思想擴展而來。微服務是單個功能。如果將 Microsoft Word 拆分為微服務,也許會有一個服務作為空白紙提供,一個服務作為拼寫檢查器提供,一個服務作為格式化工具提供。
Kubernetes 允許計算機軟件進行調整。Kubernetes 有其自身的優勢,它也推動了軟件設計從單一的服務整體走向到許多一起工作的小型服務的集合。這些過程正是因為 Kubernetes 的設計可以做到:
有效地協調服務器上單個容器的使用提高系統可靠性和可擴展性減少相關的管理和資源成本
微服務的例子
微服務非常簡單。簡單是主要的目標??梢詫⑺鼈円暈楣局械慕巧?。一個微服務扮演著非常特殊的角色,并且只做一項工作。DZone 匯集了 Uber 提供的各種微服務的出色圖表,它們通過 API 相互通信并執行不同的任務。Uber 為每個任務構建不同的服務:
旅客管理乘客網頁界面開票管理司機管理驅動程序 Web UI 付款管理旅行管理通知事項
微服務還可以通過體系架構圖進行說明,其中一個微服務是通過 API 與另一服務通信的單個節點。隨著將更多服務添加到系統上,體系結構可以發展壯大??梢韵胂?,大型公司的微服務體系結構圖可能像一個小城市一樣龐大。以下是假設的 Amazon 和 Netflix 圖形:
微服務依賴 API
API 是一種通信工具,它使一個服務與另一個服務進行交互。API 本身無法執行任何操作,除非它已連接到某些東西。當該 API 連接到服務和微服務時,它將變得很有用,例如:
Function as a Service 函數服務 Machine Learning as a Service 機器學習 Software as a Service 軟件服務
API 是您可以將微服務分發給用戶的方式。API 無需下載軟件,而是分發您的服務。API 是微服務架構正常運行所必需的,因為 API 是其服務之間的通信工具。沒有 API,將會有很多斷開的微服務。從技術上講,微服務將再次構建為整體。
API 如何運作的?
API 非常通用。您可以:
在任何容器化服務上創建 API 使用多種不同的語言 Java、Python、Go 等等在任何云提供商上部署 API
API 可以提高服務的可用性和公開性。通過簡化發行,您可以提供較小的服務。(畢竟,您不必為了證明可行性而構建整個應用所有服務)。
許多 API 都是 RESTful 的,并通過 HTTP 之類的端點公開。這意味著從 API 訪問信息就像查驗 URL 一樣容易。GET、POST、PUT、DELETE 命令與 URL 一起可以按預期工作,獲取數據或將數據提供給 API。盡管 REST API 在現代 Web 應用程序中最常見,但其他選項包括:
RPCGraphQL
作為產品,API 端點通常與開發門戶一起提供,該門戶告知開發人員如何使用它并為開發人員分配 API 密鑰。如果微服務的目標是在提供注冊車輛的數據,那么開發門戶將解釋:
服務的作用數據的結構(即數據模式)開發人員使用 API 的要求
大多數好的微服務都有某種類型的 API。如果您希望使用微服務,那么您將創建一個 API。
關于微服務與 API 的區別有什么就分享到這里啦,希望上述內容能夠讓大家有所提升。如果想要學習更多知識,請大家多多留意丸趣 TV 小編的更新。謝謝大家關注一下丸趣 TV 網站!