日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

API监控:你应该衡量什么?

發(fā)布時(shí)間:2023/12/14 编程问答 60 豆豆
生活随笔 收集整理的這篇文章主要介紹了 API监控:你应该衡量什么? 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

來源:https://blog.zhangbing.site/

在監(jiān)控第三方API和Web服務(wù)時(shí),監(jiān)控的內(nèi)容與監(jiān)控的方式一樣重要。數(shù)據(jù)是有用的,但可操作的數(shù)據(jù)才是真正的價(jià)值所在。下面我們列出了在依賴第三方API集成和Web服務(wù)時(shí),需要監(jiān)控的最常見、最有價(jià)值的指標(biāo)。準(zhǔn)確的監(jiān)控和警報(bào)可以為你的企業(yè)提供決策所需的數(shù)據(jù),以決定使用哪些API,如何構(gòu)建彈性應(yīng)用程序以及將精力集中在何處。

當(dāng)你開始監(jiān)視API或Web服務(wù)時(shí),以下是我們推薦的指標(biāo):

文章目錄

    • 延遲
    • 響應(yīng)時(shí)間
    • 可用性
    • 消費(fèi)量
    • 故障率
    • 狀態(tài)碼
    • 結(jié)束

延遲

延遲是指消息在“線上”花費(fèi)的時(shí)間。這里,數(shù)字越短越好。延遲可能是由你的服務(wù)器和API服務(wù)器之間的連接引起的,它也可能是由你的服務(wù)器和API服務(wù)器之間發(fā)生的延遲造成的。這可能是網(wǎng)絡(luò)流量或資源過載的結(jié)果,在這種情況下節(jié)流請(qǐng)求可能會(huì)適應(yīng)重載。

為了監(jiān)控延遲,Web服務(wù)需要跟蹤發(fā)出和傳入請(qǐng)求的時(shí)間戳,并在給定時(shí)間內(nèi)與過去和未來的請(qǐng)求進(jìn)行比較。這仍然很棘手,因?yàn)閬碜苑?wù)器的響應(yīng)也將受到響應(yīng)時(shí)間的影響,如果可用,ping端點(diǎn)或調(diào)用健康檢查端點(diǎn)可能是接收準(zhǔn)確延遲估計(jì)的最佳方式。

這種評(píng)估在對(duì)服務(wù)器進(jìn)行地理定位時(shí)很有用,通過確定最低的延遲,你的企業(yè)可以決定選擇哪個(gè)供應(yīng)商。如果確定延遲是導(dǎo)致響應(yīng)延遲的真正原因,還可以選擇特定的區(qū)域提供商服務(wù),或者如果資源的響應(yīng)時(shí)間是問題所在,則可以選擇不同的提供商。在實(shí)際實(shí)踐中,等待時(shí)間和響應(yīng)時(shí)間通常會(huì)合并為一個(gè)值。

響應(yīng)時(shí)間

響應(yīng)時(shí)間是指服務(wù)響應(yīng)一個(gè)請(qǐng)求所需的時(shí)間。這可能更難用第三方API和Web服務(wù)來跟蹤,因?yàn)榘l(fā)送和接收數(shù)據(jù)的延遲是響應(yīng)時(shí)間的一部分。你可以通過比較給定API上多個(gè)資源的響應(yīng)時(shí)間來估計(jì)響應(yīng)時(shí)間,由此,你可以估計(jì)API服務(wù)器和你的服務(wù)器之間的共享延遲,并確定真正的價(jià)值。

響應(yīng)時(shí)間直接影響應(yīng)用程序的性能,API響應(yīng)的延遲將導(dǎo)致用戶交互變慢。你可以通過確保你所選擇的API提供商有響應(yīng)時(shí)間保證,或者通過實(shí)施在檢測(cè)到尖峰時(shí)使用后備API或緩存資源的解決方案來避免這種情況。

可用性

API的可用性可以描述為停機(jī)時(shí)間或正常運(yùn)行時(shí)間。兩者都基于相同的數(shù)據(jù),但根據(jù)上下文可能會(huì)有不同的說法。

可用性可能是最容易跟蹤的指標(biāo)。停機(jī)錯(cuò)誤是可以識(shí)別的,有時(shí)API提供商會(huì)宣布預(yù)定的停機(jī)。但是,即使是最可靠的API也會(huì)遇到無法預(yù)料的停機(jī)時(shí)間。停機(jī)時(shí)間可以表示為單個(gè)事件,也可以表示為給定時(shí)期的總體平均值。雖然在評(píng)估API提供商時(shí),停機(jī)配額和諸如“99.999%正常運(yùn)行時(shí)間”之類的保證很有價(jià)值,但即使是最小的停機(jī)時(shí)間也可能對(duì)你的應(yīng)用程序產(chǎn)生很大影響。

許多API依賴于外部提供商,如亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)、微軟Azure和谷歌云服務(wù)。因此,現(xiàn)在個(gè)別網(wǎng)絡(luò)服務(wù)提供商的停機(jī)時(shí)間也依賴于你的應(yīng)用不直接與之進(jìn)行業(yè)務(wù)往來的第三方。即使 API 提供商的服務(wù)按預(yù)期運(yùn)行,第三方也可能不會(huì)。因此,當(dāng)出現(xiàn)較大的宕機(jī)時(shí)間時(shí),你將希望有一個(gè)備用程序,它不依賴于與原始API相同的底層提供商。

雖然在衡量方式上與停機(jī)時(shí)間類似,但API的正常運(yùn)行時(shí)間可以為業(yè)務(wù)決策提供洞察力。如果你知道某個(gè)API在關(guān)鍵工作時(shí)間內(nèi)可以為客戶帶來更好的正常運(yùn)行時(shí)間,則可以使用此指標(biāo)在提供商之間進(jìn)行切換。

一些利益相關(guān)者在選擇放棄哪個(gè)API提供商時(shí)可能會(huì)對(duì)停機(jī)時(shí)間做出反應(yīng),而其他利益相關(guān)者在考慮選擇哪個(gè)提供商時(shí)可能會(huì)更多地對(duì)正常運(yùn)行時(shí)間做出反應(yīng)。這些數(shù)值是有聯(lián)系的,但是,它們可以講述不同的數(shù)據(jù)故事。

消費(fèi)量

在監(jiān)控API的時(shí)候,很容易忘記使用情況,或者說消費(fèi)情況。內(nèi)部API可能不需要使用此指標(biāo),但是對(duì)第三方API使用的預(yù)測(cè)可以幫助制定業(yè)務(wù)決策,如果沒有適當(dāng)?shù)臄?shù)據(jù),使用Web服務(wù)時(shí)估計(jì)成本可能會(huì)很困難。消費(fèi)量可以作為一個(gè)整體來評(píng)估,也可以以突發(fā)事件來評(píng)估。一些API供應(yīng)商按月計(jì)費(fèi),但有些供應(yīng)商可能對(duì)其定價(jià)層有費(fèi)率限制,也會(huì)觀察較小時(shí)間窗口的使用情況。

通過跟蹤消費(fèi)情況并設(shè)置高使用率警報(bào),可以避免不必要的成本。此外,認(rèn)識(shí)到什么時(shí)候沒有使用API也是有益的。缺乏消費(fèi)是一個(gè)標(biāo)志,表明一個(gè)API仍然是你的代碼庫的一部分,但可能對(duì)你的應(yīng)用程序不重要,在這種情況下,你可以調(diào)整功能優(yōu)先級(jí)并深入了解應(yīng)用程序的使用情況。

最好將消費(fèi)視為運(yùn)行值,并可以通過時(shí)間窗口進(jìn)行過濾,這使得儀表盤可以提供一個(gè)概覽,以及關(guān)于何時(shí)使用API的詳細(xì)情況。

故障率

請(qǐng)求失敗的原因有很多種。當(dāng)對(duì)第三方API或Web服務(wù)的請(qǐng)求失敗時(shí),可能是由于用戶錯(cuò)誤、API停機(jī)、速率限制或各種網(wǎng)絡(luò)相關(guān)問題。雖然API故障有時(shí)可能是由你的應(yīng)用程序引起的,但在跟蹤第三方API時(shí),你希望主要關(guān)注你無法控制的失敗率。

跟蹤故障并確定故障率可以幫助:

  • 向API供應(yīng)商報(bào)告問題
  • 在多個(gè)API提供商之間做出決定
  • 做出與后備方案相關(guān)的明智決策
  • 圍繞某些資源建立彈性

某些錯(cuò)誤可能來自無效請(qǐng)求,這些可以告訴你應(yīng)用程序在發(fā)出請(qǐng)求之前需要調(diào)整內(nèi)部驗(yàn)證。來自服務(wù)器相關(guān)問題的錯(cuò)誤(如狀態(tài)碼在400和500范圍內(nèi))表明問題可能與API或web服務(wù)提供商有關(guān)。

狀態(tài)碼

跟蹤HTTP響應(yīng)可以為你提供有關(guān)單個(gè)API的細(xì)粒度細(xì)節(jié),但是跟蹤特定的狀態(tài)碼可以讓你更好地洞察問題的類型。例如,即使發(fā)生錯(cuò)誤,某些API提供程序也會(huì)以 200 OK 狀態(tài)響應(yīng)。這個(gè)錯(cuò)誤的指標(biāo)可能會(huì)讓你相信一切都按預(yù)期進(jìn)行,但是用戶可能會(huì)遇到問題,并且你的內(nèi)部日志記錄可能會(huì)講述一個(gè)不同的故事。

將 API 提供商的狀態(tài)碼指標(biāo)與內(nèi)部錯(cuò)誤日志進(jìn)行比較,可以進(jìn)一步了解你的應(yīng)用程序所依賴的第三方 Web 服務(wù)的真實(shí)錯(cuò)誤率。

結(jié)束

記住這些指標(biāo),你的應(yīng)用程序就可以更好地處理依賴于第三方集成時(shí)不可避免的問題。

測(cè)量所有這些指標(biāo)聽起來像是一項(xiàng)艱巨的任務(wù)。幸運(yùn)的是,某些開發(fā)人員工具(例如Bearer)可以幫助監(jiān)控許多這些指標(biāo)并應(yīng)對(duì)自動(dòng)出現(xiàn)的問題。


原文:https://dev.to/bearer
作者:Mark Michon

總結(jié)

以上是生活随笔為你收集整理的API监控:你应该衡量什么?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。