這篇文章主要講解了“API管理是什么意思”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“API管理是什么意思”吧!
與我們的許多客戶一樣,您可能會發現API解決方案的概念和術語相當令人生畏。在本博客中,我們將討論關鍵的API概念,并探討API管理與API網關之間的關系。
我們分如下幾個方面來分析
內部接口只向企業內的其他應用程序(及其開發人員)公開,而不向外部用戶公開。內部接口幫助解鎖數據,并促進企業內功能單元之間的協作。下面是一個示例:在向客戶提供幫助之前,企業的技術支持團隊需要確定客戶是否擁有有效的支持合同。這些信息已經存儲在企業的客戶關系管理(CRM)系統中,比如Salesforce??蛻舻膽贸绦蛘{用CRM的內部API,而不是在自己的數據庫中復制信息。
外部接口向企業外部的用戶公開。它們提供了與第三方開發人員建立伙伴關系的方法,以及您的供應商、分銷商、經銷商、甚至客戶的整個業務生態系統。外部接口還使企業能夠使用創新的業務模型生成新的收入來源。谷歌就是一個例子。許多第三方網站和應用程序都嵌入了谷歌地圖,以幫助終端用戶定位位置或獲取方向。最終用戶訪問地圖不需要花費任何東西,但是在一定數量的點擊之后,谷歌會為每個接口調用向站點或應用程序收費。
接口管理解決方案提供了一個直觀的接口來定義有意義的接口,包括基本路徑(URL)、資源和端點。
資源是任何接口定義的基礎,它們是接口執行操作所依據的信息的抽象。 示例資源是文檔和客戶id。調用API來檢索此信息。 端點指定資源的位置。接口有一個附加端點路徑的基本URL。所有接口點都相對于基本URL。 例如,在接口端點https://open.wuxiongwei.com/v1/inventory/中,/v1是基本路徑,/inventory是資源。
接口管理解決方案使接口者能夠將接口發布到各種環境,如生產、測試或開發。這確保了每個環境的一致性,并防止了錯誤配置。這些解決方案還自動創建新的接口和修改現有接口。
如前所述,接口網關保護后端和接口消費者之間的通信。接口網關功能包括驗證接口調用、將請求路由到適當的后端、應用速率限制來防止系統過載或減輕DDoS攻擊、卸載SSL/TLS流量以提高性能、以及處理錯誤和異常。
許多解決方案都有一個集中的、緊密耦合的數據平面(接口網關)和控制平面(接口管理工具)。所有接口調用都必須通過控制平面,這增加了延遲。這種體系結構方法中的接口網關在處理分布式環境中的流量時效率很低(例如微服務環境中的服務內流量或處理物聯網流量以支持實時分析)。因此,為了管理接口使用者和提供者非常接近的流量,解決方案的供應商引入了一個稱為微網關的附加軟件組件來處理接口調用。
隨著您的接口變得流行,您需要確保它們為您的接口消費者提供價值,同時滿足您的業務目標。這就是接口分析變得至關重要的地方。接口管理解決方案通過可視化(例如儀表板和報告)來提供接口度量和使用情況的關鍵洞見,并通知您(作為示例)哪些接口使用得最多和最少,接口流量如何隨時間變化,以及哪些開發人員是接口的主要消費者。接口分析使接口業務所有者(接口產品經理)能夠深入了解接口程序的性能。
分析對于故障排除也很重要。接口管理解決方案在每個接口的基礎上提供了對操作指標的深入可見性。這些度量使基礎設施和操作團隊能夠監視和排除性能和安全問題。下面是一些分析可以幫助回答的問題:
我所有的接口網關實例的狀態和正常運行時間是什么? 什么時候接口會變慢? 接口什么時候發生HTTP錯誤?
安全性是接口基礎設施的一個關鍵方面。如果沒有健壯的安全性,任何人都可以訪問您的接口和數據,并通過調用對不安全接口的調用引入惡意行為。接口安全需要以下要素:
身份驗證是可靠地確定調用者身份的過程。接口授權碼是驗證和標識希望訪問接口的調用者的標準機制。接口管理解決方案為接口提供者提供一個接口來生成接口密鑰,然后可以與第三方開發人員共享這些密鑰,以便在調用接口調用時使用。OAuth是一種廣泛使用的認證機制。
授權是指確定授予用戶哪些特權或訪問級別的過程。授權用戶的一種方法是通過JSON Web令牌(JWTs)。JWTs是斷言聲明的訪問令牌(JWT中表示個人特權的術語)。例如,客戶端應用程序顯示的JWT可能包含一個聲明,允許訪問一個特定的資源。如果客戶機應用程序試圖訪問任何其他資源,將返回一個HTTP 403禁止錯誤。
RBAC指定義具有某些特權的用戶角色。例如,基礎設施和操作人員通常不負責創建和發布接口,而只負責監視和故障排除。因此,他們被分配只有這些特權的角色。類似地,只有接口產品經理被分配了訪問接口分析的角色。
速率限制是指對調用者在規定的時間內可以發出的請求數量施加限制(例如,每秒10,000個請求)。速率限制可以防止后端系統過載,并有助于減輕DDoS攻擊。接口管理解決方案提供了定義速率限制的接口,然后由接口網關強制執行。速率限制還使您能夠提供分層的服務級別(例如,黃金客戶端每秒可以發出10,000個請求,而白銀客戶端每秒可以發出5,000個請求)。
開發人員門戶是一個在線網址,您可以在其中發布資源,以方便接口使用者的快速瀏覽,比如外部接口目錄、全面文檔和示例代碼。開發人員門戶還允許第三方開發人員注冊他們的應用程序,并獲得接口密鑰。一些解決方案還為使用您的接口的開發人員之間的交互提供了一種機制。設計良好的開發人員門戶對于接口程序的成功至關重要。
其實如果設計的是一個開放平臺,這樣管理接口已經夠用來,但是我們所處的環境是,很多企業內部有自己的接口管理系統,有些可能在rap維護,有些可能在yapi維護,有些功能完全沒有維護接口,只有代碼。這樣的情況下,如果要幫助類似企業管理接口,以上的通用開放平臺能力就比較受限,下面討論一下可能會擴展到的點。
企業在rap,ypai,postman等平臺維護了接口,這些接口需要能很方便的錄入或導入到我們的接口管理平臺中。
這種情況下,沒有一勞永逸的方法,至少要把現有系統中您希望管理的接口整理出來,維護到excel或是markdown等文件媒介中,我們的接口管理平臺需要有能力快速高效的導入維護這些接口。
當下,很多互聯網公司都使用swagger維護接口,swagger確實是一個很好的工具。開放人員只要在代碼中錄入一些注釋,就可以一鍵生成接口文檔,非常便利。
往前看5年,10年,絕大部分公司以wsdl的方式接接口,wsdl有它獨到的安全能力。那么碰到這樣的企業,接口要如何維護呢,答案是我們要把wsdl轉換成rest才能統一放入接口管理平臺來維護。
IOT是大勢所趨,CoAP和MQTT是常用的協議形式,我們怎么才能一并維護呢。對的,您沒想錯,就是和soap接口一樣,通過轉換后統一接入接口管理平臺。當然轉換后,效率肯定是會變差了,CoAP和MQTT設計出來的目的就是提高性能和響應速度。其實只要將現有接口統一維護之后,后續是有機會把 CoAP->rest 轉換成 CoAP->rest->CoAP(MQTT) 最后變成CoAP->CoAP(MQTT)
感謝各位的閱讀,以上就是“API管理是什么意思”的內容了,經過本文的學習后,相信大家對API管理是什么意思這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。