成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

阿里面試官:如果要抗住雙11高并發壓力,你的Java系統該怎么設計

開發 前端
今天就得給大家分析一下,假設你公司要搞大促,你怎么去通過全鏈路壓測評估一下你的核心系統鏈路能抗多大流量?

今天給大家分享一個話題,那就是假設你公司要搞一場雙 11 大促,現在告訴你說,咱們公司就是打算搞了,那你此時會一臉懵逼的說,雙 11 大促?會有多大并發啊?我們系統能抗住嗎?

你要這樣的話,那老板是一定不高興的了。所以今天就得給大家分析一下,假設你公司要搞大促,你怎么去通過全鏈路壓測評估一下你的核心系統鏈路能抗多大流量?

公司核心系統業務調用鏈路

首先,如果要為雙 11 大促做準備,咱們必須要對線上系統直接發起全鏈路壓測。

比如說在凌晨業務低峰期的時候,我們自己用壓測系統對咱們的線上核心鏈路發起全鏈路壓測,看看到底我們的整個系統可以抗多少流量,然后再分析一下,搞大促的時候,大概會有多少流量,接著就可以針對大促活動的流量預估,去擴容一下機器。

那么如果要搞全鏈路壓測的話,這個全鏈路壓測背后的原理大家知道嗎?我們得先給大家講一下這個全鏈路壓測背后的原理。

先說一個非常典型的鏈路,假設我們整個平臺的入口是業務系統 A,然后他的核心鏈路里面,他會調依次調用業務系統 B、業務系統 C、業務系統 D,同時還會讀寫自己的數據庫。

然后業務系統 B 又會調用業務系統 E,業務系統 E 又會調用業務系統 F,業務系統 D 又會調用業務系統 G,每個業務系統都會讀寫自己的數據庫。

如下圖所示:

看看上面這個鏈路是不是感覺非常復雜?沒錯的,對于很多公司的核心系統鏈路來說,就是可能會有很多個系統調用的鏈路。

那么這個時候來說的話,我們假設所有業務系統都是單機部署的,現在來看看,整個這個鏈路集成在一起,大概一秒鐘可以跑完多少次這個鏈路?

QPS 和 TPS 的概念

這里給大家解釋一下 QPS 和 TPS 的概念,QPS 是 Query Per Second,往往是針對單個系統自己的接口的,意思就是說自己這個接口每秒被請求多少次,TPS 是 Transaction Per Second,意思就是說每秒鐘可以完成的事務數量。

所以這個 QPS 就不太符合我們這里對全鏈路壓測的定位了,因為全鏈路跑下來,那不是說每秒多少請求可以定義的。

TPS 是比較符合這個定位的,因為我們要看的是每秒鐘這個鏈路跑完,可以跑多少次,跑完一次完整的鏈路,咱們可以認為一個 TPS,每秒鐘可以跑完多少次這個鏈路,那就是 TPS 了。

一次鏈路跑完是靠什么跑的呢?

好,那么接著給大家分析,這個一次鏈路跑完是靠什么跑的呢?

答案顯而易見,靠的是咱們鏈路入口的那個業務系統 A 的一個線程,因為假設業務系統 A 抗的是 http 請求和流量,那么業務系統 A 必然是靠 tomcat 來接收 http 請求的。

然后 tomcat 是會啟動多個線程來處理一個一個的請求的,每一個請求進來都會交給一個線程來處理。

大家看下圖:

接著呢,這個線程收到了一個請求之后,就會按照調用鏈路依次去調用,所以說,要走完一個鏈路,等于業務系統 B、業務系統 E、業務系統 F 這條鏈路得先走完,然后業務系統 C,接著是業務系統 D 和業務系統 G,再有是自己的數據庫訪問。

單擊全鏈路壓測 TPS 估算

這整個鏈路跑完大概要花多久呢?這就要看情況了,要看每個業務系統要處理多少時間了,但是這么復雜的鏈路,往往跑完起碼要幾百毫秒,我們算他 500ms 吧,基本不多也不少了。

那所以說,此時我們的 tomcat 中一個線程,等于每秒也就跑完兩次鏈路而已。

那如果說業務系統 A 的 tomcat 里開啟了 200 個線程呢?那等于是每秒的 TPS 大概也就 200*2=400 而已。

也就是業務系統 A 單臺機器在一秒內,200 個線程可以處理 400 個請求,跑完 400 次鏈路,這就是全鏈路壓測的意義所在,我們要看的是全鏈路跑完一次要耗費多久,然后在較大壓力下,一個線程每秒可以跑完幾次鏈路,再計算單機的 TPS。

進而就可以根據這個單機全鏈路壓測去估算搞大促的時候,每秒要接收多少請求,跑完多少次鏈路,然后就知道要部署多少臺機器了。

責任編輯:姜華 來源: 今日頭條
相關推薦

2022-11-21 06:40:23

微服務架構

2019-11-18 08:21:04

秒殺系統高性能

2019-11-12 09:32:35

高并發流量協議

2020-01-06 08:40:11

阿里場景服務

2024-04-29 06:41:04

項目面試官QPS

2023-01-15 17:57:12

緩存技術kafka磁盤

2021-08-26 11:10:42

架構運維技術

2021-01-20 07:16:07

冪等性接口token

2025-04-29 02:00:00

高并發系統場景

2021-01-14 05:23:32

高并發消息中間件

2021-08-02 17:21:08

設計模式訂閱

2025-06-04 03:15:00

高并發短鏈系統

2024-08-23 11:51:39

2023-11-27 08:32:02

元素HashMap

2023-11-29 08:00:53

JavaTreeMap底層

2021-09-27 07:11:18

MySQLACID特性

2015-08-13 10:29:12

面試面試官

2025-06-05 01:22:00

SpringGateway高并發

2024-11-26 08:09:58

2022-11-25 17:29:27

分布式事務
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜精品久久久久久久久久久久久 | 国产精品96久久久久久 | 91精品国产91久久综合桃花 | 国产精品成av人在线视午夜片 | 成人日韩| 亚洲人va欧美va人人爽 | 中文字幕 在线观看 | 91天堂| 午夜精品一区二区三区三上悠亚 | 久久狼人天堂 | 国产黄色在线观看 | 丝袜美腿一区 | 毛片区 | 喷潮网站 | 亚洲永久免费观看 | 在线观看中文字幕 | 7799精品视频天天看 | 亚洲免费视频在线观看 | 狠狠操狠狠搞 | 免费在线观看毛片 | 国产精品嫩草影院精东 | 亚洲国产精品一区二区三区 | 高清18麻豆 | 日韩精品久久久久 | 欧美a在线| 久久精品a| 国产欧美精品一区二区三区 | xxx国产精品视频 | 日韩一区二区三区视频在线播放 | 午夜精品一区二区三区在线视频 | 成人蜜桃av| 国产日韩欧美电影 | 亚洲精品在线免费播放 | 国产乱码精品一区二区三区五月婷 | 久久久久久久久久爱 | 99精品在线 | 中文字幕不卡在线观看 | 2019精品手机国产品在线 | 亚洲 一区 | 欧美视频在线一区 | 国产在线观看一区二区三区 |