精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何對GraphQL APIs實現監控

譯文
安全 應用安全
在實際應用中,我們往往會疑惑:如何使用GraphQL來準確地監控到目標系統的重要位置。本文將和您一起討論那些有關GraphQL APIs監控的優秀實踐。

【51CTO.com快譯】作為REST的另一種選擇,GraphQL自2015年發布以來,為前端開發人員提供了他們渴望已久的靈活性。他們可以通過一次性查詢,來定義所有需要的數據,并能夠一次性地“打包”獲取,進而大幅減少了等待的時間。

除了簡化前端,REST也讓監控等方面變得更加簡單。據此,后端團隊可以考量每一個端點的狀態,并能夠及時地發現當前出現的問題。當然,在使用的過程中,我們需要考慮清楚的最關鍵問題是:如何使用GraphQL來準確地監控到目標系統的重要位置。下面,讓我們一起來討論那些有關GraphQL APIs監控的優秀實踐。

[[331112]]

GraphQL架構

為了弄清楚上述問題件,讓我們首先來了解GraphQL的架構。通常,一個簡單的GraphQL系統會包括如下三個部分:

  • 一種可定義所有數據類型的schema(結構模式)。
  • 一個使用該schema將查詢到的每個部分都路由到某個解析器(resolver)的GraphQL引擎。
  • 一到多個能夠被GraphQL引擎所調用的解析器。

通過解析schema,GraphQL后端會讓服務器了解到哪種解析器能夠處理哪種類型的查詢。也就是說,當一個查詢被發送到GraphQL端點時,GraphQL引擎會解析該查詢中的每一種請求類型,進而調用解析器來滿足其請求。可以想象,此類方法僅限于在與簡單查詢一起使用時,才能提供卓越的性能。

有時候,查詢的某些部分會被連接到同一個數據源(包括數據庫或第三方API等)。例如,如果我們加載某個用戶的賬號及其地址,它們可能在GraphQL的schema中具有兩種類型,而在數據源中卻只有一條記錄。那么我們同時發出請求的時候,當然不希望服務器對同一個數據源發出兩次查詢請求。

針對上述問題,業界會采用一種被稱為數據加載器(data-loader)的模式。該數據加載器是位于解析器和數據源之間的另一個GraphQL API層。通過簡單的設置,解析器將能夠直接訪問到數據源。而在更為復雜的迭代中,解析器則會告訴數據加載器它們到底需要什么,據此加載器也會針對該目的去訪問數據源。

那么,由此帶來的好處是:數據加載器可以持續等待,直到所有的解析器都已被調用,并且完成了對于數據源的訪問為止。針對上面提到的例子,如果有人想加載用戶的賬號和地址的話,那么只需對數據源發出一個請求便可。

可見,解析器只需了解其對應的需求,而數據加載器則需要知道所有解析器的目的,并據此來優化具體的訪問。

監控GraphQL

有了上面的理論基礎,我們就可以根據自己的架構,在如下多個位置監控GraphQL API了:

  • HTTP端點:針對那些影響到我們API的所有流量。
  • GraphQL查詢:針對每個特定的查詢。
  • GraphQL解析器或數據加載器:針對數據源的每個訪問。
  • 全棧追蹤:針對每個查詢所影響到的解析器和數據加載器。

1. HTTP端點

在GraphQL架構中,通常只有一個HTTP端點,因此在該REST API級別上的監控,往往只能讓我們了解到有關API總體狀態的信息。

當然,這只是我們監控的一個起點。如果能夠提供低延遲、低錯誤率的全量信息,而且客戶端并無任何投訴產生的話,那么這些指標完全可以為我們節約后續花在深度監控上的大量時間和精力。但是,如果某個地方出現了問題,我們就需要更深入地進行探究了。

2. GraphQL查詢

下面,我們需要監控每一個查詢,當然主要針對的是那些靜態使用模式(static usage patterns)的API。

如果我們僅將API與自己的客戶端一起使用的話,那么針對固有查詢的變化一般不會經常發生。而如果我們的API需要處理不同客戶端的不同請求,那么查詢請求不但多,而且雜。這些只有細微差別的請求往往會拖慢整體的速度。而消除此類問題的一種做法是:檢查那些最常見的查詢,并對它們實施綜合監控。這就意味著我們需要事先定義一整套查詢和變量的組合,然后從測試客戶端運行之,以獲悉它們的用時。在此基礎上,我們能夠減少在更新時產生的,嚴重影響性能的風險因素。由于持久化查詢(Persisted queries,https://blog.apollographql.com/persisted-graphql-queries-with-apollo-client-119fd7e6bba5)可以緩存那些最常用的查詢,因此我們可以用它來解決此類問題。

3. 解析器和數據加載器

如果我們能夠查看到后端所訪問的數據源位置,那么就能夠更好地獲悉如下方面:

  • 是在訪問模式中使用了錯誤的數據源,還是需要改用其他類型的數據庫?
  • 如果數據源類型沒問題的話,那么我們還需要改進對它們的請求方式嗎?我們是否需要添加數據加載器?
  • 那些發送到外部API的請求是否太慢了?我們是否可以將數據復制到更接近后端的位置?

可見,只有當我們能夠看到后端具體查詢的是什么數據時,上述問題的答案才能迎刃而解。

正如我們在前面討論過的:解析器只能允許我們監控單個解析器的運作;而數據加載器使我們能夠在一個請求中查看到所有解析器的工作。那么,數據加載器的另一個附帶好處便是:我們能夠發現解析器之間的問題,并及時予以解決。

4. 全棧跟蹤

最為全面透徹的監控方式當屬:使用tracing-ID來標記查詢,將其傳遞給解析器以完成對該ID的解析,然后傳遞給數據加載器,并最終抵達數據源本身。據此,我們可以使用tracing-ID來記錄時間和錯誤,以便后續對其進行合并,以及了解局部狀態。

當然,在測量查詢時,我們所獲取到的有關解析用時的數據,實際上是數據被加載到解析器和/或數據加載器中進行的,而不是完成查詢解析的用時。畢竟,系統在加載數據時,已不再需要使用查詢了。這也就是GraphQL的核心思想之一:將查詢與實際數據的加載進行解耦(decoupling)。可見,我們通過全棧監控,可以全面地獲悉在發送查詢時,后臺究竟是如何運作的。

結論

總的說來,通過了解GraphQL API的后端結構,我們可以將REST API掛接到目標代碼的不同位置,進而清晰且全面地監控生產系統,以獲悉有關緩存和錯誤處理等方面的問題。

原標題:How to Best Monitor GraphQL APIs ,作者: Kay Ploesser 

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

責任編輯:趙寧寧 來源: 51CTO
相關推薦

2016-08-05 15:04:33

javascripthtmljs

2023-06-08 09:44:13

WindowSpy目標用戶監控

2023-11-09 09:13:48

GraphQLAPI 架構

2010-10-12 16:26:44

2020-10-27 18:45:45

GolangGraphQ開發

2021-06-03 09:00:00

Kubernetes集群容器

2023-03-16 18:04:00

APIWeb 應用程序開發

2018-04-23 14:31:02

微服務GraphQLBFF

2021-05-07 09:06:55

GraphQLAPI 以太坊

2023-03-10 15:03:37

Web 應用程序API開發

2016-10-20 09:07:51

ChromiumGoogleEloston

2009-07-02 10:03:02

DataView排序

2020-03-09 09:15:56

集群Prometheus開源

2019-07-07 08:02:05

AI人工智能智能監控

2014-05-21 09:14:00

VDI審計日志監控監控

2014-05-21 14:03:55

日志監控VDI

2014-01-02 15:16:42

PythonLinux服務器服務器監控

2011-03-31 14:44:55

cactisquid監控

2020-09-28 06:57:39

Node.jsGraphQLAPI

2022-10-25 11:27:40

點贊
收藏

51CTO技術棧公眾號

成人在线免费看黄| 国语对白永久免费| 精品国产鲁一鲁****| 亚洲另类春色国产| 国产一区高清视频| 无码人妻久久一区二区三区| 国产精品精品国产一区二区| 亚洲成人aaa| 久久久久久三级| av在线影院| 久久精品网站免费观看| 96pao国产成视频永久免费| 国产精品久久久久久久妇| 成人情趣视频网站| 亚洲精品国精品久久99热| 日韩av卡一卡二| 黄毛片在线观看| 中文字幕中文在线不卡住| 精品无人区一区二区三区竹菊| 中文字幕在线视频免费| 影音先锋久久资源网| 中文字幕亚洲一区在线观看| 好吊一区二区三区视频| 国产精品久久免费视频 | 明星裸体视频一区二区| 国产精品视频一二区| 久久影院亚洲| 91精品国产一区| 永久免费看黄网站| 成人aaaa| 亚洲欧美日韩国产中文专区| 中文字幕在线国产| 日本久久伊人| 88在线观看91蜜桃国自产| 欧美视频在线免费播放| 日本动漫理论片在线观看网站| 国产精品污污网站在线观看| 欧美成人综合一区| 午夜av免费观看| 国产黄色成人av| 国产精品久久久久秋霞鲁丝 | 99热在线精品观看| 九九九热精品免费视频观看网站| 黑人狂躁日本娇小| 久久视频在线| 神马久久久久久| 亚洲欧美日韩第一页| 国产成人精品三级高清久久91| 日韩大陆欧美高清视频区| 美女黄色一级视频| 国产一区福利| 亚洲精品乱码久久久久久金桔影视| 91porn在线| 91精品导航| 亚洲丁香久久久| 色呦呦一区二区| 亚洲专区视频| 国产亚洲精品久久久久久777| 黄色正能量网站| 你懂的视频欧美| 亚洲欧美日韩一区二区三区在线| 91网站免费视频| 国产在线观看91一区二区三区| 国产视频久久久久| xxx在线播放| 精品国产成人| 精品国模在线视频| 五月婷婷一区二区| 伊人久久婷婷| 欧美重口另类videos人妖| 在线观看日本网站| 欧美96一区二区免费视频| 国产啪精品视频| a天堂视频在线| 成人午夜免费电影| 免费观看成人在线| 久操视频在线免费播放| 一区二区三区免费在线观看| 超碰成人免费在线| 精品91久久| 欧美另类z0zxhd电影| 日韩高清一二三区| 无码少妇一区二区三区| 中文字幕精品在线| 久久久久久久久毛片| 一区二区国产精品| 国产精品丝袜一区二区三区| 国产三级在线观看视频| 不卡的av在线| 性欧美videosex高清少妇| 成人短视频在线观看| 精品久久久久久久大神国产| 在线免费观看av的网站| 欧美一级大片在线视频| 欧美一级欧美三级在线观看 | 国产免费不卡视频| 91一区二区三区在线播放| 日韩中文字幕av在线| 在线国产情侣| 午夜成人免费电影| 午夜av中文字幕| 日韩av中文字幕一区| www.亚洲一区| 天堂在线免费观看视频| 国产伦精品一区二区三区视频青涩 | 中国黄色片一级| 久久夜色精品国产噜噜av小说| 中文日韩在线观看| 日韩在线观看第一页| 九色综合狠狠综合久久| 免费看污久久久| 污影院在线观看| 欧美日韩精品一二三区| 免费成人蒂法网站| 午夜日韩激情| 国产精品免费看久久久香蕉| 污视频在线免费| 亚洲精品视频在线| 久久撸在线视频| 先锋影音国产精品| 欧美激情免费观看| 国产视频在线观看免费| 日本一区二区综合亚洲| www国产精品内射老熟女| 精品三级国产| 久久精品国产久精国产一老狼| 蜜臀99久久精品久久久久小说 | 欧美黄色一级生活片| 99综合视频| 国产欧美日韩综合精品二区| 高h视频在线观看| 色视频成人在线观看免| 亚洲av无码一区二区三区观看 | 欧美高清不卡在线| 国产又黄又粗又硬| 国产精品久久久久久久久免费相片 | 就去色蜜桃综合| av福利在线导航| 欧美一级淫片007| 欧美一级片在线视频| 美女网站色91| 伊人久久大香线蕉av一区| 深夜视频一区二区| 亚洲视频精品在线| 日韩精品成人免费观看视频| 91麻豆高清视频| 无码播放一区二区三区| 久久久伦理片| 91产国在线观看动作片喷水| 欧性猛交ⅹxxx乱大交| 亚洲一区二区三区视频在线| 特黄特色免费视频| 国内精品久久久久久久97牛牛 | 在线播放毛片| 欧美日韩1区2区| 萌白酱视频在线| 久久激情五月婷婷| 久久免费视频2| 日韩成人在线观看视频| 久久久久久亚洲精品| 少妇又色又爽又黄的视频| 欧美日韩激情网| 一区二区精品免费| 毛片av一区二区| 一区二区三区视频在线播放| 麻豆精品久久| 久久久午夜视频| 女人天堂在线| 欧美日韩国产高清一区二区三区 | 老司机精品福利视频| 视频在线观看成人| 国产精久久久| 午夜精品视频在线| 国产精品一区二区婷婷| 欧美区在线观看| 久久亚洲国产成人精品性色| 97精品国产97久久久久久久久久久久| 午夜精品久久久内射近拍高清 | 久久久亚洲综合| 杨幂毛片午夜性生毛片| 一本精品一区二区三区| 国产亚洲福利社区| 精品福利在线| 欧美激情视频播放| 国产福利免费在线观看| 在线成人av网站| 久久久久久久久久影院| 一区视频在线播放| 亚洲观看黄色网| 久久精品国产第一区二区三区| 欧美这里只有精品| 国产欧美日韩在线观看视频| 99视频在线播放| 欧洲亚洲两性| 欧美日韩成人在线视频| 国产福利免费在线观看| 日韩三级视频在线观看| 老熟妇一区二区三区| 亚洲主播在线观看| 欧美波霸videosex极品| 丁香婷婷综合激情五月色| 亚洲xxxx2d动漫1| 亚洲国产网站| 自拍另类欧美| 香蕉视频一区| 国产精品免费看一区二区三区 | 99久久精品久久久久久ai换脸| 韩日成人影院| 性欧美办公室18xxxxhd| 欧美性天天影视| 亚洲女在线观看| 欧洲精品久久一区二区| 制服丝袜成人动漫| 波多野结衣激情视频| 亚洲mv在线观看| 国内偷拍精品视频| 国产精品毛片无遮挡高清| www.色天使| 不卡一二三区首页| 国产裸体视频网站| 麻豆国产精品官网| 久草综合在线观看| 亚洲综合欧美| av免费观看国产| 欧美日韩四区| 狠狠干视频网站| 国产精品毛片久久| 亚洲一区二区三区加勒比| 欧美日韩123| 久久草视频在线看| 欧美成人基地| 国产精品制服诱惑| 91夜夜蜜桃臀一区二区三区| 91九色对白| 国产美女亚洲精品7777| 成人午夜黄色影院| 亚洲青青一区| 成人美女av在线直播| 日韩久久一区| 成人疯狂猛交xxx| 青青在线精品| 91九色综合久久| 国产日韩一区二区三免费高清| 国产日韩欧美视频在线| 日本成人在线网站| 91九色视频在线| 色妞ww精品视频7777| 97se亚洲综合| 波多野结衣欧美| 激情欧美一区二区三区中文字幕| 国产图片一区| 麻豆传媒一区二区| 欧美一级本道电影免费专区| 日韩欧美一区二区视频在线播放| 欧美日韩性在线观看| 欧美亚洲丝袜| 成人在线免费小视频| gogogo免费高清日本写真| 一区二区三区午夜探花| 轻点好疼好大好爽视频| 9色精品在线| www黄色av| 美腿丝袜亚洲色图| 成年人看片网站| 99精品国产热久久91蜜凸| 精品无码一区二区三区| 欧美激情在线一区二区| 一级黄色片日本| 亚洲国产精品久久人人爱 | 色呦呦呦在线观看| 久久理论片午夜琪琪电影网| 五月天av在线| 国产精品视频区| 亚洲国产视频二区| 免费成人在线观看av| 日韩欧美精品一区| 欧美乱做爰xxxⅹ久久久| 免费在线亚洲| 91亚洲精品久久久蜜桃借种| 床上的激情91.| 性猛交娇小69hd| 亚洲品质自拍视频| 好吊妞视频一区二区三区| 欧美日韩高清不卡| 国精品人妻无码一区二区三区喝尿| 亚洲精品国产福利| 欧美成人精品一区二区男人看| 欧美极品在线播放| 91精品店在线| 国产免费高清一区| 色综合久久一区二区三区| av在线观看地址| 美女视频一区二区| 波多野结衣影院| 一区在线中文字幕| 欧美黑人一区二区| 日韩一区二区三区电影在线观看 | www.日本在线观看| 亚洲欧美三级伦理| 日本在线观看大片免费视频| 国产精品99久久久久久www| 视频一区国产| 亚洲制服中文| 性娇小13――14欧美| 被黑人猛躁10次高潮视频| 国产天堂亚洲国产碰碰| 国产大片aaa| 69精品人人人人| 成年人免费在线视频| 性欧美办公室18xxxxhd| 欧美视频二区欧美影视| 一区二区不卡视频| 久久久久久穴| 国产老熟女伦老熟妇露脸| 亚洲精品欧美在线| 日本成人一级片| 日韩av网站电影| 国产白丝在线观看| 亚洲精品日韩av| 婷婷综合视频| 污污的网站18| 国产日韩一级二级三级| 久久精品国产成人av| 亚洲精品在线免费观看视频| a级在线观看| 亚洲999一在线观看www| 日韩av二区| 九热视频在线观看| 国产人伦精品一区二区| 黄色在线观看国产| 亚洲韩国欧洲国产日产av| 免费男女羞羞的视频网站在线观看| 91亚洲精品在线观看| 日韩毛片视频| 色片在线免费观看| 国产精品国模大尺度视频| 一级久久久久久| 国产小视频91| 欧美va在线观看| 天堂资源在线亚洲视频| 奇米在线7777在线精品| 欧美激情 一区| 欧美日韩高清一区| 超碰porn在线| 亚洲在线视频福利| 欧美三级不卡| 亚洲调教欧美在线| 在线欧美一区二区| 国产日产精品久久久久久婷婷| 国产精品99久久久久久白浆小说| 国产欧美亚洲精品a| 狠狠躁狠狠躁视频专区| 国产精品久久久久一区二区三区共| 中文字幕第三页| 精品久久久999| 亚洲国产一区二区三区网站| 日本人体一区二区| www国产精品av| 国产真人无遮挡作爱免费视频| 中文在线不卡视频| 久久久久毛片免费观看| 精品人妻人人做人人爽| 91麻豆精品在线观看| 青青国产在线视频| 色999日韩欧美国产| 欧美日韩破处视频| 国产精品无码免费专区午夜| 不卡一区二区三区四区| 亚洲中文字幕无码爆乳av| 日韩视频免费看| 久久动漫网址| 亚洲男人天堂色| 亚洲激情校园春色| 外国精品视频在线观看| 国产精品久久久久高潮| 在线中文字幕亚洲| 手机在线看片日韩| 欧美日韩高清在线| 黄频免费在线观看| 亚洲蜜桃av| 成人av电影在线播放| 中文字幕 自拍偷拍| 欧美日本啪啪无遮挡网站| 伊甸园亚洲一区| 亚洲色图欧美自拍| 欧美日韩在线影院| 二区在线播放| 日本一区美女| 成人性生交大片免费看中文| 草莓视频18免费观看| 欧美老少做受xxxx高潮| 国产免费久久| 色悠悠在线视频| 欧美日韩午夜在线视频| 91黄页在线观看| 中文字幕av日韩精品| 99re热视频精品| 国产熟女一区二区三区四区| 日本老师69xxx| 好吊日精品视频|