Stories

List
Create Time

令牌桶VS漏桶:誰才是流量控制的“最優解”?

大家好,我是小富~ 面試被問到限流算法,很多面試官會讓直接手寫令牌桶和漏桶的實現。雖然平時用過Redis、Guava等現成的限流工具,但真要手寫還是有點慌。今天就來聊聊這兩種經典限流算法的區別,並用Java手寫實現。 很多的限流工具底層都應用了它們 一、令牌桶 vs 漏桶:核心區別 令牌桶 令牌桶的核心思想:固定容量的桶,以固定速率往桶裏放令牌,請求來了就從桶拿令牌,沒令牌就拒絕。 有點像買票進站

Create Time

面試被問:OOM類型有哪些?怎麼答?

大家好,我是小富~ 面試官:OOM類型有哪些? 你:就是老年代放不下了嘛! 面試官:等消息吧! OOM(Out Of Memory) 錯誤有多種類型,每種類型對應不同的內存區域或觸發場景。以下是常見的 OOM 類型及其產生原因: 1. java.lang.OutOfMemoryError: Java heap space 觸發原因:堆內存(存放對象實例)不足,無法分配新對象。

Create Time

上線別再“一刀切”!Gateway 做流量染色 + 灰度發佈,告別線上事故

大家好,我是小富~ 最近團隊迭代頻繁,連續幾周都在做新功能上線,從測試環境驗證到生產環境放量,全程謹小慎微沒出一次故障,主要是用好了 Spring Cloud Gateway 的 流量染色 和 灰度發佈。 很多同學面試時被問用過 SpringCloud Gateway 嗎?,只會説做限流、鑑權,但這些都是網關的基礎操作。要想出去吹,得説用網關解決線上新版本平穩上線的問題。比如今天要分享的流量染色

Create Time

別再亂排查了!Kafka 消息積壓、重複、丟失,根源基本都是 Rebalance!

大家好,我是小富~ 有次上線監控告警突然炸了,Kafka 訂單 Topic 消息積壓量突破 10 萬條,下游支付服務拿不到數據,部分用户付款後一直顯示處理中。 緊急登錄集羣排查,發現消費者組明明有 3 個節點,卻只有 1 個在正常消費,原來 10 分鐘前觸發了 Rebalance,另外兩個節點還卡在分區重新分配的狀態,導致消費能力直接砍半。 所以我的經驗是:Kafka出現消息積壓、重複、丟失這類問

Create Time

別再手寫過濾器!SpringCloud Gateway 內置30 個,少寫 80% 重複代碼

大家好,我是小富~ 我發現公司的網關項目裏有很多的輪子,幾乎每個人接手這個項目開發,都會自定義過濾器,導致有非常非常多的過濾器,修改其中一個,指不定就會影響其他的人功能,非常的惱火。 其實在 Spring Cloud Gateway 本身內置了很多通用的過濾器組件,有些功能無需重複開發,直接通過配置就能完成請求修改、參數處理、安全校驗等功能。但遺憾的是,很多同學只知道 RewritePath 等常