讀寫分離是業(yè)務(wù)開發(fā)中常用的技術(shù)手段本文講的是在什么業(yè)務(wù)場景下需要讀寫分離,讀寫分離實現(xiàn)的機(jī)制以及實際生產(chǎn)中應(yīng)用讀寫分離要注意的問題 什么時候需要讀寫分離 互聯(lián)網(wǎng)大部分業(yè)務(wù)場景...
讀寫分離是業(yè)務(wù)開發(fā)中常用的技術(shù)手段本文講的是在什么業(yè)務(wù)場景下需要讀寫分離,讀寫分離實現(xiàn)的機(jī)制以及實際生產(chǎn)中應(yīng)用讀寫分離要注意的問題 什么時候需要讀寫分離 互聯(lián)網(wǎng)大部分業(yè)務(wù)場景...
Service Mesh:服務(wù)網(wǎng)格有哪些應(yīng)用Dubbo 和 Spring Cloud ,這兩個框架是面試中的熱點本文就梳理下 Dubbo 和 Spring Cloud 的應(yīng)用...
隨著各種云服務(wù)的發(fā)展,越來越多的服務(wù)運行在以 Docker 為代表的容器之內(nèi) 容器化技術(shù)簡介 容器技術(shù)是一種更加輕量級的操作系統(tǒng)隔離方案可以將應(yīng)用程序及其運行依賴環(huán)境打包到鏡...
如何理解分布式鎖 Redis 可以通過 set key 方式來實現(xiàn)分布式鎖實際開發(fā)中還要考慮如何確保超時情況下的串行,如何合理的釋放鎖等本文要講的是一個完備的分布式鎖應(yīng)該具備...
如何理解分布式鎖 為了保證在多線程下處理共享數(shù)據(jù)的安全性,需要保證同一時刻只有一個線程能處理共享數(shù)據(jù)Java 語言提供了線程鎖,開放了處理鎖機(jī)制的 API,比如 Synchr...
MySQL 有哪些一致性日志 如果 MySQL 數(shù)據(jù)庫斷電了,未提交的事務(wù)怎么辦?依靠日志MySQL InnoDB 引擎中和一致性相關(guān)的有:重做日志(redo log)、回滾...
在分布式系統(tǒng)中,各個節(jié)點之間在物理上相互獨立,通過網(wǎng)絡(luò)進(jìn)行溝通和協(xié)調(diào)在關(guān)系型數(shù)據(jù)庫中,由于存在事務(wù)機(jī)制,可以保證每個獨立節(jié)點上的數(shù)據(jù)操作都滿足 ACID 兩階段和三階段提交的...
為什么需要限流?以及常見的限流算法有哪些? 常見限流算法 限流通過限制系統(tǒng)的流量,從而實現(xiàn)保護(hù)系統(tǒng)的目的限流需要結(jié)合容量規(guī)劃和壓測來進(jìn)行當(dāng)外部請求接近或達(dá)到系統(tǒng)的最大閾值時,...
分布式高可用系列 以電商大促為背景,講解系統(tǒng)限流,降級熔斷,負(fù)載均衡,穩(wěn)定性指標(biāo),系統(tǒng)監(jiān)控和日志系統(tǒng)等方面內(nèi)容討論在面對電商大促,秒殺搶購等高并發(fā)的業(yè)務(wù)場景時,有哪些高可用的...
以 Redis 為例,分析一下單點緩存如何擴(kuò)展到集群,以及集群部署的幾種常見模式 緩存集群的高可用 Redis 的主從復(fù)制主從復(fù)制——各個副本之間的快速數(shù)據(jù)同步任何節(jié)點都可以...
在業(yè)務(wù)開發(fā)中,緩存服務(wù)需要滿足高可用性,最常用的手段是集群擴(kuò)展目前 Redis 流行的集群方案有 官方的Cluster方案,twemproxy 代理方案,哨兵模式,Codis...
在分布式高可用設(shè)計中系統(tǒng)監(jiān)控非常重要 服務(wù)器監(jiān)控指標(biāo) 系統(tǒng)運行時指標(biāo) 基礎(chǔ)組件指標(biāo) 業(yè)務(wù)運行時指標(biāo) 例如:開發(fā)一個用戶評論系統(tǒng),在指標(biāo)的選擇上,通常需要結(jié)合上下游各個鏈路,和...
分布式系統(tǒng)的特點 隨著移動互聯(lián)網(wǎng)的快速發(fā)展,互聯(lián)網(wǎng)的用戶數(shù)量越來越多,產(chǎn)生的數(shù)據(jù)規(guī)模也越來越大。對應(yīng)用系統(tǒng)提出了更高的要求,我們的系統(tǒng)必須支持高并發(fā)訪問和海量數(shù)據(jù)處理分布式系...
緩存使用的是內(nèi)存資源,內(nèi)存資源要用有限的服務(wù)器資源支撐更多的業(yè)務(wù)。必須刪除掉訪問頻率不高的緩存,為新的緩存騰出內(nèi)存空間 頁面置換算法 緩存技術(shù)對應(yīng)到操作系統(tǒng)中,就是緩存頁面的...
集群擴(kuò)展之后,服務(wù)請求如何從服務(wù)器列表中選擇合適的一臺呢? 依賴負(fù)載均衡策略 負(fù)載均衡指的是如何將網(wǎng)絡(luò)請求派發(fā)到集群中的一個或多個節(jié)點上處理,常見的負(fù)載均衡有 硬件負(fù)載均衡,...
高頻問題:應(yīng)用緩存以后,緩存和數(shù)據(jù)庫何時同步? 數(shù)據(jù)不一致問題 除了少部分配置信息類緩存,比如業(yè)務(wù)中的黑白名單信息,頁面展示配置等大部分緩存應(yīng)用一般是作為前端請求和持久化存儲...
Kafka 的高性能 家用電腦的性能與配置的關(guān)系——價格更昂貴的服務(wù)器會有更好的性能Kafka 使用普通服務(wù)器就能實現(xiàn) TB 級別的傳輸性能Kafka 被廣泛運用于大數(shù)據(jù)處理...
在分布式系統(tǒng)中的緩存,有 Redis,Memcached 等后端存儲,在前端頁面,瀏覽器,網(wǎng)絡(luò) CDN 中也有緩存 Redis,或者 Memcached 等服務(wù)端緩存,在緩存...