国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

不可思議!平均執行耗時僅1.5ms的接口在超時時間100ms下成功率竟然還不到5個9!!

開發 前端
本文深入分析了平均耗時僅有1.5ms的接口也會出現大量100ms+的前因后果,并在框架層面給出了彈性超時的解決方案。這也刷新了我們的認知,由于GC、CPU時間片等原因,一些看起來很簡單的操作(如i++)也會出現偶發性長耗時。

1.背景

一個春暖花開的午后,客服技術部佩姐(P)找過來向我們反饋一個問題,如下是我們的對話:

P:云杰,我們最近在治理服務質量,有個接口的成功率達不到公司標準5個9。
 
我:贊,你們也開始質量治理了,詳細說說。
 
P:我們sccis有個重要的lookupWarehouseIdRandom接口,先查詢緩存,未命中的再從數據庫查并回寫到緩存,平均執行耗時只有1.5ms。現在scoms在調它,超時時間配的還是100ms,結果發現每天還有500多個超時,成功率不到5個9,達不到公司標準。你們框架是不是有問題啊,幫忙看看!
 
我:不至于吧!?平均執行耗時1.5ms,在調用方超時時間配100ms(60多倍!)的情況下竟然還有這么多超時?
 
P:真的!!不信你看看!!!
 
我:看看就看看!

如下開始本篇的研究之旅。

2 驗證與分析

2.1 準備工作

在開始驗證之前,先簡要介紹下轉轉RPC框架SCF的調用過程,如下圖所示:圖片

  • 序列化:SCF接收到調用方的請求,做負載均衡、序列化等;
  • 發送:SCF將序列化后的二進制流通過網絡發送給服務方結點;
  • 反序列化:服務方結點接收到數據后,將數據交給SCF,做反序列化、排隊等;
  • 執行:SCF將請求交由服務方的實現方法進行處理;
  • 序列化:SCF將服務方的處理結果序列化為二進制數據流;
  • 發回:將數據發回給調用方;
  • 反序列化:調用方SCF收到請求后,將二進制數據反序列化為對象交由調用方代碼,使得調用方看起來跟本地方法調用一樣。

如上是一次完整的RPC調用鏈路。

2.2 驗證

通過監控我們發現接口的平均執行耗時確實在1.5ms左右,如下圖所示:

圖片圖片

但調用方scoms在超時時間為100ms的情況下確實仍然有很多請求超時:

圖片圖片

太讓人震驚了!!!

2.3 問題分析

通過如上的RPC調用過程鏈路示意,我們可以看出任意一個子過程都可能會發生抖動,造成超時。但我們可以從整體上把鏈路分為框架和業務兩個部分(分界點如圖所示):

  • 框架:指底層的網絡和SCF耗時,屬于客觀原因,包括圖中的1、2、3、5、6、7;
  • 業務:單純指業務服務的執行4,屬于主觀原因。

因為框架耗時復雜多變,不好統計,我們可以統計業務的執行耗時分布,以此來判斷問題出在框架上還是出在業務上。

  • 如果業務的執行耗時分布都非常低,那就說明超時花在了框架上;
  • 如果業務的執行耗時分布都有很多高耗時的,那就說明超時花在了業務邏輯上。

正好服務方的接口有耗時分布監控,通過監控我們發現絕大部分情況都在5ms內處理完成,但仍有314個請求處理時間直接超過了100ms!!!

耗時分布耗時分布

這個發現也讓我們大吃一驚:平均執行耗時1.5ms的接口,竟然還會有這么多請求執行耗時越過100ms!! 那么這些時間都花在哪里了呢?

2.4 排查

目前的監控都是接口的整體執行耗時,我們需要深入接口內部看看時間都花在哪里了。我們對接口分為如下幾個部分,并分段監控起來。

圖片圖片

監控結果如下所示:

圖片圖片

從結果可以看到:

  • I/O操作容易抖動,出現較多次100ms+;
  • 最簡單的CPU操作雖然沒有那么多100ms+,但也有不少20ms左右的情況(而且都是從1ms突變到20ms,而不是漸變)。

2.5 原因

原來我們是被1.5ms給平均了!什么原因會導致這種長尾效應呢?情況可能有很多,GC(極度懷疑)、CPU時間片分配等。如下是sccis的GC監控:

圖片圖片

為此,我們也對比了轉轉商品服務zzproduct的getProductById()接口,發現也有同樣的情況:

getProductById()耗時分布getProductById()耗時分布

3.解決方案

至此,我們看到業務接口平均執行耗時雖然僅有1.5ms,但仍會出現不少超過100ms的長尾效應,當然框架也會出現。其原因有多種,GC(極有可能)、CPU時間片分配、網絡抖動等等。

而這,也確實刷新了我們所有人的認知。

反過來想,如果業務接口要達到公司要求的5個9要求,該怎么辦呢?其實很簡單,我們可以參照調用方的TP9999來設置超時時間。如下圖,scoms調用該接口的TP99999是123ms,而業務把超時時間配置成了100ms,那肯定達不到5個9的標準了。要么把超時時間改為123ms(簡單直接),要么優化業務邏輯(目測很難,因為平均執行耗時只有1.5ms)或JVM調優(很有希望)。

圖片圖片

3.1 框架優化-彈性超時

基于本文分析,RPC框架也可以針對這種長尾效應做一定優化:不改變超時時間100ms配置情況下,允許一段時間(可配)一些量(可配)的請求在200ms(可配)時間內返回,既提高了服務質量,又不太影響用戶體驗,我們稱之為彈性超時方案。

3.1.1 效果

如下圖所示,我們在服務管理平臺支持按服務&函數設置彈性超時,這里我們將上文zzscoms調zzsccis的IInventoryWrapCacheFacade.lookupWarehouseIdRandom(List)函數配置成每40秒允許15個請求的超時時間延長至1300毫秒。

彈性超時配置彈性超時配置

通過配置彈性超時,我們看到這種偶發性的超時基本被容忍消滅掉了,如下圖所示:

圖片圖片

3.1.2 適用場景

彈性雖好,可不要貪杯!它更多適用于一些偶發性超時場景,比如網絡抖動、GC、CPU抖動、冷啟動等,如果是大面積的超時還是需要深入分析治理。

4 總結

本文深入分析了平均耗時僅有1.5ms的接口也會出現大量100ms+的前因后果,并在框架層面給出了彈性超時的解決方案。這也刷新了我們的認知,由于GC、CPU時間片等原因,一些看起來很簡單的操作(如i++)也會出現偶發性長耗時。


關于作者

杜云杰,高級架構師,轉轉架構部負責人,轉轉技術委員會執行主席,騰訊云TVP。負責服務治理、MQ、云平臺、APM、分布式調用鏈路追蹤、監控系統、配置中心、分布式任務調度平臺、分布式ID生成器、分布式鎖等基礎組件。

責任編輯:武曉燕 來源: 轉轉技術
相關推薦

2021-11-10 06:38:01

Python鏈式操作

2023-04-06 09:44:00

ChatGPT行業質量

2011-07-18 13:35:14

HTML 5

2024-11-29 07:42:47

2024-06-04 10:37:06

2022-09-20 10:41:32

接口優化網絡

2024-06-13 09:17:41

2013-10-10 13:07:25

方物

2024-07-30 14:26:52

2020-08-06 11:25:29

數據庫鏈接池線程

2017-03-21 08:52:20

神經網絡聲譽

2024-04-07 00:00:00

億級數據ES

2022-01-24 15:57:34

Python返回功能代碼

2020-09-01 11:10:39

數據庫鏈接池HikariCP

2012-02-13 11:01:27

N9Android 4.0

2011-02-23 08:50:22

C#.NETdynamic

2013-07-31 15:06:58

未來的WebWebGLWeb

2010-07-15 16:21:03

不可思議的服務器

2025-07-29 00:15:00

2014-01-14 10:33:42

開源硬件開源
點贊
收藏

51CTO技術棧公眾號

美女久久网站| 精品免费一区二区| 黄网站色欧美视频| 色播五月综合网| 老牛影视一区二区三区| 国产自产女人91一区在线观看| 国产午夜精品一区在线观看| 91精品国产福利| 国产黄在线看| 亚洲高清免费在线| 成人在线看片网站| 久久精品一区蜜桃臀影院| 日本免费a视频| xxxx18hd亚洲hd捆绑| 青青草原综合久久大伊人精品优势| 国产综合动作在线观看| 欧美 日韩 国产精品免费观看| 国产精品福利观看| 欧美三级伦理在线| 国产精品久久久久免费a∨大胸| 国产精品网在线观看| 久久综合伊人77777| 欧美97人人模人人爽人人喊视频| 国产亚洲一区二区精品| 日韩毛片一区| 在线激情影院一区| 伊人久久大香| 国内精品久久久久影院 日本资源| 日韩精品一区二区三区免费视频| 欧美激情精品久久久久久免费印度| 国产午夜久久av| 欧美丰满老妇厨房牲生活| av动漫精品一区二区| 69**夜色精品国产69乱| 伊人精品一区| 成人在线精品视频| 中日韩视频在线观看| 免费一区二区三区在在线视频| 久久一区激情| 无码日本精品xxxxxxxxx| 成人免费视频视频| 老司机午夜av| 亚洲自拍偷拍网站| 岛国在线视频免费看| 3atv在线一区二区三区| 日韩欧美一起| 亚洲精品电影在线| 日韩一级淫片| 91精品国产综合久久香蕉| 欧美黄色一区| 一区二区三区四区免费视频| 成人免费va视频| 男人j桶女人的网站| 欧美丝袜一区二区| 黄色18在线观看| 欧美激情va永久在线播放| 国内成人自拍| 免费精品视频一区| 成a人片国产精品| 日本免费视频| 欧美一区二区日韩| 正在播放91九色| 播五月开心婷婷综合| 国模私拍视频| 8v天堂国产在线一区二区| 欧美xnxx| 成人av在线亚洲| 激情久久五月天| 国产视频二区| 亚洲精品久久久久久久久久久久久| 欧美a级大片在线| 激情伦成人综合小说| 成人高清视频免费观看| 传媒av在线| 精品亚洲aⅴ在线观看| 亚洲理论电影| 亚洲一区影院| 偷偷要91色婷婷| 精品福利在线| www.久久艹| 国产色爱av资源综合区| 日本精品在线| 97在线视频免费| 蜜桃av噜噜一区| 一区二区三区高清在线视频 | 久久久久久久久久久国产| 国产精品久久久久久久久久10秀| 黄色一级片国产| 色综合天天综合网国产成人综合天 | 成人福利影院| 91精品婷婷国产综合久久性色| 高清久久精品| 亚洲成人在线视频网站| 亚洲国产一区二区三区| 亚洲欧美在线人成swag| 欧美一区二区三区四区夜夜大片 | 亚洲区成人777777精品| 狠狠久久五月精品中文字幕| 亚洲在线资源| 亚洲 国产 欧美一区| 午夜精品福利一区二区三区蜜桃| 亚洲ww精品| 超碰在线免费| 亚洲欧美激情精品一区二区| 国产韩国精品一区二区三区| 久久美女福利视频| 欧美精品一区二| 五月天久久久| 妞干网2018| 久久成人在线视频| 狠狠色狠狠色综合系列| 第九色区av在线| 国产日本欧美在线观看| 国产欧美精品一区aⅴ影院| 咪咪网在线视频| 精品一区二区三区免费毛片| 亚洲午夜久久久久久久久电影院| 日韩欧美久久| 日本欧美黄色片| 亚洲精品自拍视频| 青青草97国产精品免费观看| 日韩专区在线| 激情视频在线观看一区二区三区| 欧美性生交xxxxxdddd| 欧美中文一区二区| 国产高潮av| 欧美一级视频在线观看| 日本一区二区三区四区| 国产不卡精品在线| 久章草在线视频| 欧美精品一区二区免费| 久久综合九色综合欧美98| 欧美啪啪网站| 欧美韩国日本在线| 精品国产一区二区三区在线观看 | 欧美激情小视频| 久久人人超碰精品| 国产精品久久久久久久久久辛辛| 国产精品国产对白熟妇| 中国china体内裑精亚洲片| 成人免费高清视频在线观看| 日韩免费小视频| 久久亚洲a v| 精品国产一区av| 久久综合中文字幕| 亚洲国产中文在线二区三区免| 热久久精品免费视频| 韩国美女主播一区| 亚洲激情av在线| 欧美在线黄色| 在线三级中文| 久久久久久久久久久综合| 亚洲这里只有精品| 亚洲日本一区二区| 91麻豆.com| 国模冰冰炮一区二区| 色中文字幕在线观看| 亚洲天堂精品在线| 99天天综合性| 国产伦理久久久久久妇女| 美女一级全黄| 91深夜福利视频| 欧美剧情电影在线观看完整版免费励志电影| 国产综合色产| 丰满大乳少妇在线观看网站| 国产性生活免费视频| 国内揄拍国内精品| 午夜精品成人在线视频| 久久三级福利| 日本国产一区| 校园春色影音先锋| 欧美激情国产日韩| 最近2019年中文视频免费在线观看| 国产视频亚洲色图| 自拍偷拍欧美| 乡村艳史在线观看| 一道本在线免费视频| 亚洲影院在线看| 亚洲乱码国产乱码精品精天堂 | 欧美亚洲自偷自偷| 91tv亚洲精品香蕉国产一区| 国产bdsm| 亚洲欧美电影在线观看| 欧美激情亚洲另类| 欧美经典一区| 在线中文字幕资源| 久久av喷吹av高潮av| 国产成人97精品免费看片| 91精品国产综合久久婷婷香蕉| www.66久久| 欧美日韩三级电影在线| 日韩欧乱色一区二区三区在线 | 日本一不卡视频| 91蜜桃臀久久一区二区| 国产色a在线| 欧美日韩在线视频一区二区三区| 成人黄色av网| 中文字幕亚洲情99在线| 精品国产91久久久| 久久亚洲一区二区三区四区|