如何基于MongoDB打造.Net的分布式Session子系统

Taobao有她自己的分布式session框架,.net阵营也不能落后了,在下做了个 基于MongoDB的支持最多26台MongoDB的分布式Session框架。

先看看配置文件:

<?xml version="1.0" encoding="utf-8" ?>
<MongoDBSession>
  <DbName>SessionDB</DbName>
  <IdentityMap 

Identity="A">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="B">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="C">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="D">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="E">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="F">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="G">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="H">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="I">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="J">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="K">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="L">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="M">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="N">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="O">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="P">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="Q">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="R">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="S">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="T">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="U">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="V">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="W">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="X">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="Y">mongodb://localhost</IdentityMap>
  <IdentityMap 

Identity="Z">mongodb://localhost</IdentityMap>
</MongoDBSession>

从Identity A一直到Z,默认分成了26个Map,具体的C#应用代码:

protected void btnTest_Click(object sender, EventArgs e)
        {
            Session["A"] = DateTime.Now;
            Session["B"] = 1111111111111;
            Session["C"] = "fffffffffffffff";
        }

        protected void btnGetSession_Click(object sender, EventArgs e)
        {
            Response.Write(Session["A"].ToString());
            Response.Write("<br />");
            Response.Write(Session["B"].ToString());
            Response.Write("<br />");
            Response.Write(Session["C"].ToString());
        }
        protected void btnAbandon_Click(object sender, EventArgs e)
        {
            Session.Abandon();
        }

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索mongodb
, session
, 分布式
, response
, write
, localhost
, mongodb主键
, mongodb spring
, C#对MongoDB操作
, mongodb入门
, mongodb检索
, mongodb总结
, mongodb心得
MongoDB教程
分布式子系统互相调用、mongodb 分布式、mongodb 分布式存储、mongodb分布式部署、mongodb分布式搭建,以便于您获取更多的相关知识。

时间: 2024-11-02 03:02:43

如何基于MongoDB打造.Net的分布式Session子系统的相关文章

开源倾情奉献:基于.NET打造IP智能网络视频监控系统

转载自 http://www.cnblogs.com/gaochundong/p/opensource_ip_video_surveillance_system_part_1_introduction.html     开源倾情奉献系列链接 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(二)基础类库介绍 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(三)命令行工具集 开源倾情奉献:基于.NET打造IP智能

ASP.NET通过分布式Session提升性能_实用技巧

如果我们正在使用Session,那么构建高性能可扩展的ASP.NET网站,就必须解决分布式Session的架构,因为单服务器的 SESSION处理能力会很快出现性能瓶颈,这类问题也被称之为Session同步.微软有自己的分布式Session的解决方案,那就是 SessionStateServer,我们可以参考: ASP.NET Session State Partitioning  http://blog.maartenballiauw.be/post/2008/01/23/ASPNET-Ses

基于MongoDB的高并发高可用政府云平台架构实践

3月12日下午在阿里巴巴西溪园区,举行了MongoDB杭州用户交流会.微软MSDN特邀讲师徐雷分享<基于MongoDB的政府云平台高并发高可用HA架构实践 >,从自身实践出发,讲述了政府云平台分层.技术栈选型.物理架构.API架构及DB数据库架构的设计思路和方法.   以下内容根据现场分享和演讲PPT整理而成.   学习MongoDB的重要性 目前,几乎所有国内外的互联网大公司都在用MongoDB,学习企业需要的技术很重要.   MongoDB优点   相比较关系型数据库而言,MongDB有两

Redis学习笔记~StackExchange.Redis实现分布式Session

对于多WEB的环境现在已经是必须的了,很难想像一台WEB服务器面对百万并发的响应,所以,我们需要多台WEB服务器集群合作,来缓解这种高并发,高吞吐的场景,而对于多WEB的场景又会有个问题出现,即session存储的问题,如一个用户登陆后,把一个状态信息存储到当前WEB服务器的session里,而你请求其它页面时,很可能就被路由到另一台服务器了,这时,session也就丢了,而对于这种情况,有人把redis这个存储中间件想了起来,对它进行了封装,就有了今天基于redis的session共享机制.

基于C/S架构的分布式防火墙

随着政府.企业.个人主机的网络安全需求的与日俱增,防火墙技术应运而生.传统的边界式防火墙是企业内部网络与外部网络的一道屏障,但是其无法对内部网络访问进行控制,也没有对黑客行为进行入侵检测和阻断的功能.企业迫切需要一套真正能够解决网络内部和外部,防火墙和防黑客的安全解决方案,而基于C/S架构的分布式防火墙很好地满足了这一需求:它是由安全策略管理服务器[Server]以及客户端防火墙[Client]组成,综合运用多种先进的网络安全技术,为客户提供可靠的网络安全服务. 一. 分布式防火墙系统架构 分布

基于Sql Server 2008的分布式数据库的实践(四)

原文 基于Sql Server 2008的分布式数据库的实践(四) 数据库设计 1.E-R图 2.数据库创建 Win 7 1 create database V3 Win 2003 1 create database V3 3.数据表设计 Win7 创建数据表student_7 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 create table student_7 (     sid int not null,     sex nvarchar(1) not nul

基于Sql Server 2008的分布式数据库的实践(二)

原文 基于Sql Server 2008的分布式数据库的实践(二) 从Win7连接Win2003的Sql Server 2008 1.新建链接服务器链接到Win2003的Sql Server 2008 2.查看Win2003上面的IP地址,配置"新建链接服务器"中的"常项"   3.配置"新建链接服务器"中的"安全项",本地登录为"sa",远程用户也为"sa" 4.链接成功 Win7启动

基于Sql Server 2008的分布式数据库的实践(一)

原文 基于Sql Server 2008的分布式数据库的实践(一) 配置Sql Server 2008(Win7) 1.打开SQL server2012,使用windows身份登录 2.登录后,右键选择"属性".左侧选择"安全性",选中右侧的"SQL Server 和 Windows 身份验证模式"以启用混合登录模式 3.选择"连接",勾选"允许远程连接此服务器",然后点"确定" 4.展

看银行如何基于信息化打造流程银行帝国

本文讲的是看银行如何基于信息化打造流程银行帝国,之前在谈论外包的时候很多人认为金融业是最舍得在IT系统的开发和服务上"砸钱"的大户,造成很多人对银行等金融业的外包理解面变成IT外包,而实际上银行乃至金融业的服务外包所涵盖的内容却非常广泛,在信息系统之上如何让银行的员工为用户提供专业的服务不是简单的大量培训就能完成的.想了解金融服务外包最好的方法就是跟服务外包商近距离接触,因为他们能够把正在做的事情.能做而没有做的和未来要做的事情告诉我们,能够知道真正的挑战是什么,而这些从旁观者的角度很