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

分布式系統(tǒng)中Session共享的五種方法

開發(fā) 架構(gòu) 分布式
Memcache由于是一款基于Libevent多路異步I/O技術(shù)的內(nèi)存共享系統(tǒng),簡單的Key + Value數(shù)據(jù)存儲模式使得代碼邏輯小巧高效,因此在并發(fā)處理能力上占據(jù)了絕對優(yōu)勢,目前本人所經(jīng)歷的項(xiàng)目達(dá)到2000/秒 平均查詢,并且服務(wù)器CPU消耗依然不到10%。

[[272319]]

分布式系統(tǒng)中Session共享的五種方法

 1. 基于NFS的Session共享

NFS是Net FileSystem的簡稱,最早由Sun公司為解決Unix網(wǎng)絡(luò)主機(jī)間的目錄共享而研發(fā)。

這個(gè)方案實(shí)現(xiàn)最為簡單,無需做過多的二次開發(fā),僅需將共享目錄服務(wù)器mount到各頻道服務(wù)器的本地session目錄即可,缺點(diǎn)是NFS依托 于復(fù) 雜的安全機(jī)制和文件系統(tǒng),因此并發(fā)效率不高,尤其對于session這類高并發(fā)讀寫的小文件, 會由于共享目錄服務(wù)器的io-wait過高,最終拖累前端WEB應(yīng)用程序的執(zhí)行效率。

2. 基于數(shù)據(jù)庫的Session共享

首選當(dāng)然是大名鼎鼎的Mysql數(shù)據(jù)庫,并且建議使用內(nèi)存表Heap,提高session操作的讀寫效率。這個(gè)方案的實(shí)用性比較強(qiáng),相信大家普 遍在 使用,它的缺點(diǎn)在于session的并發(fā)讀寫能力取決于Mysql數(shù)據(jù)庫的性能,同時(shí)需要自己實(shí)現(xiàn)session淘汰邏輯,以便定時(shí)從數(shù)據(jù)表中更新、刪除 session記錄,當(dāng)并發(fā)過高時(shí)容易出現(xiàn)表鎖,雖然我們可以選擇行級鎖的表引擎,但不得不否認(rèn)使用數(shù)據(jù)庫存儲Session還是有些殺雞用牛刀的架勢。

3. 基于Cookie的Session共享

這個(gè)方案我們可能比較陌生,但它在大型網(wǎng)站中還是比較普遍被使用。原理是將全站用戶的Session信息加密、序列化后以Cookie的方式, 統(tǒng)一 種植在根域名下(如:.host.com),利用瀏覽器訪問該根域名下的所有二級域名站點(diǎn)時(shí),會傳遞與之域名對應(yīng)的所有Cookie內(nèi)容的特性,從而實(shí)現(xiàn) 用戶的Cookie化Session 在多服務(wù)間的共享訪問。

這個(gè)方案的優(yōu)點(diǎn)無需額外的服務(wù)器資源;缺點(diǎn)是由于受http協(xié)議頭信心長度的限制,僅能夠存儲小部分的用戶信息,同時(shí)Cookie化的 Session內(nèi)容需要進(jìn)行安全加解密(如:采用DES、RSA等進(jìn)行明文加解密;再由MD5、SHA-1等算法進(jìn)行防偽認(rèn)證),另外它也會占用一定的帶 寬資源,因?yàn)闉g覽器會在請求當(dāng)前域名下任何資源時(shí)將本地Cookie附加在http頭中傳遞到服務(wù)器。

4. 基于Memcache的Session共享

Memcache由于是一款基于Libevent多路異步I/O技術(shù)的內(nèi)存共享系統(tǒng),簡單的Key + Value數(shù)據(jù)存儲模式使得代碼邏輯小巧高效,因此在并發(fā)處理能力上占據(jù)了絕對優(yōu)勢,目前本人所經(jīng)歷的項(xiàng)目達(dá)到2000/秒 平均查詢,并且服務(wù)器CPU消耗依然不到10%。

另外值得一提的是Memcache的內(nèi)存hash表所特有的Expires數(shù)據(jù)過期淘汰機(jī)制,正好和Session的過期機(jī)制不謀而合,降低了 過期Session數(shù)據(jù)刪除的代碼復(fù)雜度,對比“基于數(shù)據(jù)庫的存儲方案”,僅這塊邏輯就給數(shù)據(jù)表產(chǎn)生巨大的查詢壓力。

分布式系統(tǒng)中Session共享的五種方法

5、基于Redis 的Session共享

分布式系統(tǒng)中Session共享的五種方法

責(zé)任編輯:武曉燕 來源: 今日頭條
相關(guān)推薦

2015-08-19 15:45:33

2022-04-14 10:24:27

分布式系統(tǒng)性能

2023-04-03 10:00:00

Redis分布式

2023-12-29 08:18:31

Session分布式系統(tǒng)微服務(wù)

2023-01-06 16:42:28

2021-11-02 07:54:40

List分片Java

2025-03-05 09:10:00

session開發(fā)Web

2023-05-12 08:23:03

分布式系統(tǒng)網(wǎng)絡(luò)

2013-08-29 13:46:18

MongoDBSession.Net

2024-10-18 08:00:00

分布式系統(tǒng)背壓數(shù)據(jù)庫

2023-07-19 08:22:01

分布式系統(tǒng)數(shù)據(jù)

2018-12-14 10:06:22

緩存分布式系統(tǒng)

2023-02-11 00:04:17

分布式系統(tǒng)安全

2020-03-20 14:48:46

SpringBootJava分布式

2023-05-29 14:07:00

Zuul網(wǎng)關(guān)系統(tǒng)

2023-06-18 12:21:42

分布式系統(tǒng)模式架構(gòu)設(shè)計(jì)

2017-12-18 10:47:04

分布式存儲數(shù)據(jù)

2021-03-08 09:56:24

存儲分布式Session

2016-08-12 15:17:40

分布式

2024-07-05 08:26:54

點(diǎn)贊
收藏

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