原创 阿里內網一位p7大佬關於“限流”的分享(僅限小範圍傳播) 背景和⽬的 常⻅算法 常⻅場景使⽤ 參考鏈接

背景和⽬的 Rate limiting is used to control the amount of incoming and outgoing traffic to or from a network。 限流需要解決的問題本質: 1.

原创 阿里內部強制執行的Redis規範,違者績效直接3.25 Redis規範 二.命令使用

Redis規範一:鍵值設計1.key 名設計(1)可讀性和可管理性        以業務名(或數據庫名)爲前綴(防止key衝突),用冒號分隔,比如業務名:表名:id(2)簡潔性        保證語義的前提下,控制key的長度,當key

原创 阿里十年java老兵總結的50條mysql使用軍規 一.數據庫配置 二.業務設計 三. 應用規範

支付業務很大程度上依賴於數據庫做支持,正確的設置數據庫參數以及正確的使用數據庫對非常重要,我這把自己之前的一些心得貼出來,拋磚引玉,大家可以把自己的一些心得分享出來供大家參考學習。一.數據庫配置        1. innodb_flush

原创 工作十多年的BAT架構師總結的Redis集羣原理,圖文並茂,小白也能輕鬆看懂

Redis作爲一款性能優異的內存數據庫,支撐着衆多億級流量平臺,也成爲很多互聯網公司的標配。這裏將以Redis Cluster集羣爲核心,基於最新的Redis5版本,從原理再到實戰,玩轉Redis集羣常見Redis集羣方案在介紹Redis

原创 美團外賣內部上線流程規範25條,不遵守流程導致線上問題可以走人了

外賣c端java程序上線流程規範(強制嚴格遵守,如果不按此流程走而導致出現問題的話,直接打包走人,相反,嚴格遵守此流程規範,出現問題,不予追究責任,酌情改進):1. 開發同學將下週要上線的內容記錄到wiki,在上線wiki中記錄需上線內容:

原创 支付寶是如何處理熱點賬戶高併發轉賬問題的 前言:方案設計前提 1:爲什麼做熱點賬戶設計 2:業界關於熱點賬戶衝扣設計方案 3:幾種方案的對比 4:詳細方案設計

前言:方案設計前提 一般賬務系統對賬戶的衝扣需要滿足以下兩點 1:更新賬戶表中的賬戶餘額。 2:記錄賬戶明細表中的賬戶更新前餘額,賬戶更新後餘額,操作金額。 其中對賬戶表中的餘額更新一般是直接update,對賬戶明細表中的操作前金額,操作後

原创 喜報:簡書網友根據我給他發的Mysql千萬級大表優化建議30條,順利拿到大廠月薪30k的offer

1.對查詢進行優化,應儘量避免全表掃描,首先應考慮在 where 及 order by 涉及的列上建立索引。 2.應儘量避免在 where 子句中對字段進行 null 值判斷,否則將導致引擎放棄使用索引而進行全表掃描,如:select i

原创 cpu負載的真正含義到底是什麼

最近遇到了幾次load異常的問題,用top命令查看後發現load很高,但是cpu的其他指標都十分正常,於是想好好了解下爲什麼會load高。什麼是cpu的loadCPU負載:顯示的是一段時間內正在使用和等待使用CPU的平均任務數。看到網上有個

原创 面試祕籍:阿里美團Java 最常見的 200+ 面試題(附答案)

這份面試清單是從我 2016 年做了 TeamLeader 之後開始收集的,一方面是給公司招聘用,另一方面是想用它來挖掘在 Java 技術棧中,還有那些知識點是我不知道的,我想找到這些技術盲點,然後修復它,以此來提高自己的技術水平。雖然我是

原创 阿里P7:電商下單支付場景下Spring Cloud全家桶是這麼玩兒的

毫無疑問,Spring Cloud是目前微服務架構領域的翹楚,無數的書籍博客都在講解這個技術。不過大多數講解還停留在對Spring Cloud功能使用的層面,其底層的很多原理,很多人可能並不知曉。因此本文將通過大量的手繪圖,給大家談談Spr

原创 SpringBoot + Redis 分佈式鎖:模擬小米手機秒殺搶購

本篇內容主要講解的是redis分佈式鎖,這個在各大廠面試幾乎都是必備的,下面結合模擬小米手機秒殺搶購的場景來使用她;本篇不涉及到的redis環境搭建,快速搭建個人測試環境,這裏建議使用docker;本篇內容節點如下: jedis的nx生成鎖

原创 BAT大牛手把手帶你實現TCC分佈式事務(含代碼實例) 目錄 一、寫在前面 二、業務場景介紹 三、進一步思考 四、落地實現TCC分佈式事務 五、總結與思考

目錄 一、寫在前面 二、業務場景介紹 三、進一步思考 四、落地實現TCC分佈式事務 (1)TCC實現階段一:Try (2)TCC實現階段二:Confirm (3)TCC實現階段三:Cancel 五、總結與思考 一、寫在前面 之前網上看到很

原创 老司機帶路,手把手教你使用Git

老司機帶路,手把手教你使用Git一:Git是什麼?       Git是目前世界上最先進的分佈式版本控制系統。二:SVN與Git的最主要的區別?      SVN是集中式版本控制系統,版本庫是集中放在中央服務器的,而幹活的時候,用的都是自己

原创 如何用消息系統避免分佈式事務?

如何用消息系統避免分佈式事務?前陣子從支付寶轉賬1萬塊錢到餘額寶,這是日常生活的一件普通小事,但作爲互聯網研發人員的職業病,我就思考支付寶扣除1萬之後,如果系統掛掉怎麼辦,這時餘額寶賬戶並沒有增加1萬,數據就會出現不一致狀況了。上述場景在各

原创 聊聊分佈式事務,再說說解決方案

聊聊分佈式事務,再說說解決方案分佈式事務是企業集成中的一個技術難點,也是每一個分佈式系統架構中都會涉及到的一個東西,特別是在微服務架構中,幾乎可以說是無法避免,本文就分佈式事務來簡單聊一下。數據庫事務在說分佈式事務之前,我們先從數據庫事務說