淘寶top平臺調用接口響應時間優化

個人專欄地址:個人segmentfault,歡迎瀏覽


1、背景

調用top接口的響應時間長(160ms左右),超時和鏈接異常頻繁發生。致使消息組件消費工程的tps遇到瓶頸(單實例單消息隊列250tps),只能經過增長實例數來支撐更高的消費能力。segmentfault

2、目標

一、最大程度下降top接口的響應時間。
二、減小超時和鏈接異常的次數。測試

3、優化過程

階段一

按top接口文檔接入,以jws的AsyncHttp類做爲http客戶端。
接口文檔:http://open.taobao.com/docs/doc.htm?spm=a219a.7629140.0.0.iGIk9k&docType=1&articleId=101617&treeId=1優化

使用的top網關地址:https://eco.taobao.com/router/restspa

測試結果:

圖片描述

關鍵詞 Connection:close 說明服務端主動關閉了鏈接,鏈接沒法複用。rest

階段二

向top網關的接口人詢問網關是否主動鏈接複用,反饋:http1.1都會主動關閉鏈接。router

測試網關地址:

使用http2測試結果,一樣會主動關閉鏈接,並無支持http2。
圖片描述htm

再次向top網關接口人詢問爲何會主動關閉鏈接,工做人員回覆: 提供一個新的top網關地址blog

再次測試網關地址:

圖片描述

鏈接可複用。接口

切換新地址再次測試top:

圖片描述

階段三

發佈生產環境驗證:
一、push消息響應時間由160ms --> 60ms。
二、超時告警減小。
                 隊列

4、後續

4.一、將優化的方式實現到其餘接口

發佈生產環境驗證:
一、接口一響應時間由153ms --> 47ms。
二、接口一響應時間由147ms --> 45ms。
三、超時告警減小。

4.二、以http2方式接入,效果會更好。

相關文章
相關標籤/搜索