自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

【高并發(fā)】如何實(shí)現(xiàn)億級(jí)流量下的分布式限流?這些理論你必須掌握??!

網(wǎng)絡(luò) 通信技術(shù) 分布式
在互聯(lián)網(wǎng)應(yīng)用中,高并發(fā)系統(tǒng)會(huì)面臨一個(gè)重大的挑戰(zhàn),那就是大量流高并發(fā)訪問,比如:天貓的雙十一、京東618、秒殺、搶購促銷等,這些都是典型的大流量高并發(fā)場景。

[[335435]]

作者個(gè)人研發(fā)的在高并發(fā)場景下,提供的簡單、穩(wěn)定、可擴(kuò)展的延遲消息隊(duì)列框架,具有精準(zhǔn)的定時(shí)任務(wù)和延遲隊(duì)列處理功能。自開源半年多以來,已成功為十幾家中小型企業(yè)提供了精準(zhǔn)定時(shí)調(diào)度方案,經(jīng)受住了生產(chǎn)環(huán)境的考驗(yàn)。為使更多童鞋受益,現(xiàn)給出開源框架地址:

https://github.com/sunshinelyz/mykit-delay

PS: 歡迎各位Star源碼,也可以pr你牛逼哄哄的代碼。

寫在前面

在互聯(lián)網(wǎng)應(yīng)用中,高并發(fā)系統(tǒng)會(huì)面臨一個(gè)重大的挑戰(zhàn),那就是大量流高并發(fā)訪問,比如:天貓的雙十一、京東618、秒殺、搶購促銷等,這些都是典型的大流量高并發(fā)場景。

注意:由于原文篇幅比較長,所以被拆分為:理論、算法、實(shí)戰(zhàn)(HTTP接口實(shí)戰(zhàn)+分布式限流實(shí)戰(zhàn))三大部分。

高并發(fā)系統(tǒng)限流

短時(shí)間內(nèi)巨大的訪問流量,我們?nèi)绾巫屜到y(tǒng)在處理高并發(fā)的同時(shí)還能保證自身系統(tǒng)的穩(wěn)定性?有人會(huì)說,增加機(jī)器就可以了,因?yàn)槲业南到y(tǒng)是分布式的,所以可以只需要增加機(jī)器就可以解決問題了。但是,如果你通過增加機(jī)器還是不能解決這個(gè)問題怎么辦呢?而且這種情況下又不能無限制的增加機(jī)器,服務(wù)器的硬件資源始終都是有限的,在有限的資源下,我們要應(yīng)對(duì)這種大流量高并發(fā)的訪問,就不得不采取一些其他的措施來保護(hù)我們的后端服務(wù)系統(tǒng)了,比如:緩存、異步、降級(jí)、限流、靜態(tài)化等。

這里,我們先說說如何實(shí)現(xiàn)限流。

什么是限流?

在高并發(fā)系統(tǒng)中,限流通常指的是:對(duì)高并發(fā)訪問或者請(qǐng)求進(jìn)行限速或者對(duì)一個(gè)時(shí)間內(nèi)的請(qǐng)求進(jìn)行限速來保護(hù)我們的系統(tǒng),一旦達(dá)到系統(tǒng)的限速規(guī)則(比如系統(tǒng)限制的請(qǐng)求速度),則可以采用下面的方式來處理這些請(qǐng)求。

  • 拒絕服務(wù)(友好提示或者跳轉(zhuǎn)到錯(cuò)誤頁面)。
  • 排隊(duì)或等待(比如秒殺系統(tǒng))。
  • 服務(wù)降級(jí)(返回默認(rèn)的兜底數(shù)據(jù))。

其實(shí),就是對(duì)請(qǐng)求進(jìn)行限速,比如10r/s,即每秒只允許10個(gè)請(qǐng)求,這樣就限制了請(qǐng)求的速度。從某種意義上說,限流,其實(shí)就是在一定頻率上進(jìn)行量的限制。

限流一般用來控制系統(tǒng)服務(wù)請(qǐng)求的速率,比如:天貓雙十一的限流,京東618的限流,12306的搶票等。

限流有哪些使用場景?

這里,我們來舉一個(gè)例子,假設(shè)你做了一個(gè)商城系統(tǒng),某個(gè)節(jié)假日的時(shí)候,突然發(fā)現(xiàn)提交訂單的接口請(qǐng)求比平時(shí)請(qǐng)求量突然上漲了將近50倍,沒多久提交訂單的接口就超時(shí)并且拋出了異常,幾乎不可用了。而且,因?yàn)橛唵谓涌诔瑫r(shí)不可用,還導(dǎo)致了系統(tǒng)其它服務(wù)出現(xiàn)故障。

我們?cè)撊绾螒?yīng)對(duì)這種大流量場景呢?一種典型的處理方案就是限流。當(dāng)然了,除了限流之外,還有其他的處理方案,我們這篇文章就主要講限流。

  • 對(duì)稀缺資源的秒殺、搶購;
  • 對(duì)數(shù)據(jù)庫的高并發(fā)讀寫操作,比如提交訂單,瞬間往數(shù)據(jù)庫插入大量的數(shù)據(jù);

限流可以說是處理高并發(fā)問題的利器,有了限流就可以不用擔(dān)心瞬間高峰流量壓垮系統(tǒng)服務(wù)或者服務(wù)雪崩,最終做到有損服務(wù)而不是不服務(wù)。

 

責(zé)任編輯:武曉燕 來源: 冰河技術(shù)
相關(guān)推薦

2024-10-28 08:01:11

2022-07-25 06:42:24

分布式鎖Redis

2024-05-27 08:32:45

2021-02-24 16:17:18

架構(gòu)運(yùn)維技術(shù)

2024-10-08 11:21:11

2022-01-10 19:45:40

微服務(wù)GO系統(tǒng)

2017-12-12 14:51:15

分布式緩存設(shè)計(jì)

2024-11-27 00:20:32

2025-02-26 00:28:01

2020-10-13 07:44:45

理解分布式

2018-12-20 09:30:59

分布式高并發(fā)多線程

2021-10-12 10:00:25

架構(gòu)運(yùn)維技術(shù)

2023-07-11 10:24:00

分布式限流算法

2016-11-28 08:58:43

系統(tǒng)限流

2025-02-03 00:55:00

Sentinel分布式系統(tǒng)

2021-04-02 09:50:14

微服務(wù)分布式鎖Java

2022-02-22 10:29:24

分布式架構(gòu)高可用

2020-09-03 06:33:35

高并發(fā)場景分布式鎖

2018-10-23 09:22:06

2020-09-23 22:36:27

分布式架構(gòu)系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)