精品一区二区三区在线成人,欧美精产国品一二三区,Ji大巴进入女人66h,亚洲春色在线视频

分布式部署那些事

開發 前端 分布式
提到分布式,一定就會涉及到集中式,相比于集中式,分布式說明存在很多個節點,各個節點彼此協同工作。

什么是分布式

提到分布式,一定就會涉及到集中式,相比于集中式,分布式說明存在很多個節點,各個節點彼此協同工作。

從分布式的概念可以看出,分布式強調彼此的協同,每個節點負責部分工作,比如我們的一個商城系統,可以分成訂單系統,用戶系統,短信系統,支付系統等等。從外部來看他們是一個整體,提供一個商城的完整功能。

為什么會出現分布式

集中式的部署很方便,而且不會有節點網絡問題,不會出現不統一的問題,不會出現可用性等問題,雖然集中式有各種各樣的優點,但是面對高并發的時候,面對更大數據請求的時候,顯然單個節點無法滿足要求,這個時候就需要將請求分配到不同的機器節點上,這樣才能讓請求得到正確響應。

代碼如何編寫

不同于我們寫的集中式編碼方式,在涉及到分布式的時候,我們需要考慮session的共享問題,對于session的共享問題,我們一般通過redis來進行數據的共享。

對于同一個用戶的請求,如果被分配到不同的機器上可能會導致數據的不一致問題,這個時候我們需要考慮讓同一個用戶的請求被同一個節點機器處理,這就需要考慮對用戶的ip做hash處理,讓同一個ip被相同的機器處理。

對于文件的存儲我們也需要進行處理,我們不能將文件保存到各個機器上,我們應該做的是找一個單獨的文件服務器進行文件的存儲管理,不過一般我們都是采用云對象存儲,這樣所有的靜態資源請求都會由單獨的云存儲進行管理,可以進行cdn緩存,大大提高了服務器的負載。

分布式鎖

對于在一個主機上的資源并發訪問,我們可以通過加鎖來解決,但是對于分布式機器上的資源,如果有并發請求的話,我們就需要使用分布式鎖來進行處理。

對于分布式鎖有很多種解決方案,主要是數據庫mysql,分布式調度zooker,內存數據庫redis等。

很多情況下,我們都是采用redlock進行分布式鎖的處理。

分布式算法

提到分布式,離不開的問題就是一致性問題,為了保證數據的一致性,我們就需要通過一定的算法來實現,而常用的分布式一致性算法Paxos、Raft。

總結

分布式和我們平時開發集中式的業務有著本質上的區別,原本不會產生問題的地方,因為網絡或者其它原因都會產生問題,我們能夠做的就是充分考慮到可能出現的問題,學習別人已經總結出來的算法和架構,這樣在遇到問題的時候才能有的放矢。

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2014-07-22 10:42:04

2013-06-13 11:29:14

分布式分布式緩存

2014-07-15 11:15:44

hadoop分布式部署

2020-09-08 13:25:52

HBase分布式數據庫

2017-05-10 08:59:18

分布式系統承載量

2021-12-09 10:45:19

分布式事務框架

2015-11-10 17:45:00

分布式系統設計開源模塊

2011-04-01 14:28:58

zabbix應用proxy

2022-01-17 09:18:28

JMeter分布式壓測

2013-02-01 14:23:22

vSphere

2019-10-10 09:16:34

Zookeeper架構分布式

2017-09-01 05:35:58

分布式計算存儲

2019-06-19 15:40:06

分布式鎖RedisJava

2023-05-29 14:07:00

Zuul網關系統

2018-04-11 08:54:16

Linux ARM存儲分布

2009-12-21 13:47:29

WCF分布式事務

2020-07-03 13:29:08

Redis集群哈希槽

2017-10-27 08:40:44

分布式存儲剪枝系統

2014-03-11 16:13:43

分布式NTP應用方案

2023-10-26 18:10:43

分布式并行技術系統
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 伊春市| 吐鲁番市| 普格县| 朝阳区| 巴南区| 安泽县| 竹山县| 得荣县| 思南县| 芦山县| 湖南省| 宁陵县| 辽中县| 客服| 寿阳县| 鄄城县| 闽侯县| 达尔| 沭阳县| 青海省| 台前县| 信宜市| 邯郸县| 万年县| 保康县| 涡阳县| 达孜县| 两当县| 屯门区| 佳木斯市| 黔南| 河东区| 南溪县| 定安县| 威海市| 友谊县| 云阳县| 于都县| 神木县| 公安县| 浠水县|