C redis 分布式session儲存

2022-02-08 11:46:55 字數 1710 閱讀 4701

乙個基於redis的session儲存擴充套件方案,解決asp.net中session的侷限性和跨應用程式使用的侷限性

1 branch

0 releases

1 contributor

c# 99.3%

asp 0.7%

c#asp

branch: master 

sessionextentionstore

/merge branch 'master' of

…latest commit f11b84d8f4

uliian authored on 5 apr 2014

sessionextention

改名9 months ago

sessionextentionstore

改名9 months ago

packages

session擴充套件儲存

9 months ago

.gitattributes

初始化提交以新增預設 .gitignore 和 .gitattribute 檔案。

9 months ago

.gitignore

初始化提交以新增預設 .gitignore 和 .gitattribute 檔案。

9 months ago

readme.md

update readme.md

9 months ago

sessionextention.sln

改名9 months ago

sessionextention.sln.dotsettings

session擴充套件儲存

9 months ago

乙個基於redis的session儲存擴充套件方案,解決asp.net中session的侷限性和跨應用程式使用的侷限性

原生的session解決方案存在著跨應用程式的困難,擴充套件性的困難,而sessionextentionstore方案致力於解決這個問題。 這是乙個簡單的處理方案,使用了這個解決方案,您能將多個應用間資料互動交由sessionextentionstore解決, 在使用共享session提供sso的解決方案中,尤其有用。

我採用的是類session的處理方式,和sessionid繫結到了一起,這樣就能依賴於session的機制將使用者和擴充套件繫結到了一起。

使用方法: 配置web.config,增加以下配置節點:

要是mvc環境,則建立乙個controller父類,派生自controller類,若是webform則建立乙個父類派生自system.web.ui.page, 父類加入以下屬性定義:

private storecontainer _store;

public storecontainer store

return _store ?? (_store = new storecontainer(session.sessionid));}}

其他所有頁面都派生自這兩個父類,然後均可以使用store屬性進行資料儲存,與使用session的方式一樣。 因為儲存內容當中帶有型別資訊,若帶有非mscorlib帶有的的資料型別需要在多應用程式間共享,需要在子類中使用 store.getjson(string key)或者getvalue(string key)方法。

我的第乙個可以使用的開源專案,我在我所負責的專案中已經開始使用,希望有能看到的朋友給予支援,提出寶貴意見。謝謝!

C Redis分布式快取

六 查詢資料 在c redis實戰 五 中介紹了如何刪除redis中資料,本篇將繼續介紹redis中查詢的寫法。1 使用linq匹配關鍵字查詢 using var redisclient redismanager.getclient var user redisclient.gettypedc.五 ...

C redis 分布式session儲存

乙個基於redis的session儲存擴充套件方案,解決asp.net中session的侷限性和跨應用程式使用的侷限性 1 branch 0 releases 1 contributor c 99.3 asp 0.7 c asp branch master sessionextentionstore...

C Redis分布式鎖的應用

我們在開發很多業務場景會使用到鎖,例如庫存控制,等。一般我們會使用記憶體鎖的方式來保證線性的執行。但現在大多站點都會使用分布式部署,那多台伺服器間的就必須使用同乙個目標來判斷鎖。分布式與單機情況下最大的不同在於其不是多執行緒而是多程序。分布式站點使用記憶體鎖方式如下圖 假設有3個使用者同時購買一件商...