探索ASP.NET MVC5系列之~~~5.Session篇(进程外Session)

其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正)

汇总:http://www.cnblogs.com/dunitian/p/4822808.html#mvc

本章Demohttps://github.com/dunitian/LoTCodeBase/blob/master/NetCode/6.网页基础/BMVC5/MVC5Base/Controllers/SessionController.cs

方法有很多,今天主要说不改代码的那两种(状态服务器+数据库)后面在说运维的时候会介绍Memcache的方案 正常的登录: 登录视图:

管理页面视图:

控制器:

页面效果:

登录成功:

先说第一种,状态服务器:(其实真的来台状态服务器到不如来台Memcache服务器了,结合Cookies完全可以替代Session) 先去状态服务器里面启动一下State服务,并设置为自动启动 (你只是开发用就不需要设置自启动了)

然后把注册表修改一下:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\aspnet_state\Parameters\AllowRemoteConnection AllowRemoteConnection ,0仅能本机使用,1可以供其他机器使用.

最后一步:吧aspnet_state添加到安全防火墙允许列表里面:

刷新一下即可:

这时候你可以干一件事情===》你把你网站重启看看Session还在不在~~~(答案是:) 如果遇到异常就看这篇文章:http://www.cnblogs.com/dunitian/p/6131270.html 我记得有状态服务之类的开源项目的,感兴趣的可以去Github搜索看看 ------------------------------------------------------------------------------------------------------------------ 现在说一下数据库充当状态服务器的方法: 第一步注册一下,这个数据库可以是项目数据库,也可以是单独的数据库

如果没有SessionDB数据库,则会自动创建一个名为SessionDB的数据库

数据库添加的表和存储过程

自动生成的job负责删除过期Session的记录值

第二步,配置文件配置一下:

登录看看:

数据库里面有了对应的记录

过期后就需要重新登录了,可能有人会好奇,为啥我上图的过期时间这么长?(⊙o⊙)…额,这个滑动时间是可以自己设置(单位:分钟)==》<sessionState timeout="20"></sessionState>

例如:

重新登录一下:

过期后数据库里面的记录会被自动删掉的

妈妈再也不用担心进程外Session的问题了~

参考链接:https://msdn.microsoft.com/zh-cn/library/h6bb9cz9(v=vs.110).aspx

原文发布于微信公众号 - 我为Net狂(dotNetCrazy)

原文发表时间:2016-12-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏乐沙弥的世界

Linux 主机网络接入配置

网络配置是我们在安装好操作系统之后,需要解决的第一步。现时代没有接入网络的主机已然等同于一堆废铁。在网络配置的过程中,通常我们需要配置本机IP地址,缺省网关,D...

2810
来自专栏运维技术迷

试试Linux下的ip命令

linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是...

4255
来自专栏Albert陈凯

Zookeeper安装部署调试命令

下载地址: http://www.apache.org/dyn/closer.cgi/zookeeper/ 我选用清华的镜像 https://mirrors...

2965
来自专栏服务器运维

Debian系统快速安装Caddy/PHP7/SQLite及一键安装Typecho

如果我们准备搭建正规网站且准备长期运营的,建议还是选择较为成熟的WEB面板或者脚本安装环境,毕竟通过多年的完善比较成熟,而且有较多的可用文档解决常规问题。且我们...

3485
来自专栏纯洁的微笑

springcloud(九):配置中心和消息总线

我们在springcloud(七):配置中心svn示例和refresh中讲到,如果需要客户端获取到最新的配置信息需要执行 refresh,我们可以利用webho...

39812
来自专栏为数不多的Android技巧

如何调试Android Framework?

Linus有一句名言广为人知:Read the fucking source code. 但其实,要深入理解某个软件、框架或者系统的工作原理,仅仅「看」代码是远...

1801
来自专栏伦少的博客

通过数据库客户端界面工具DBeaver连接Hive

本文讲解如何通过数据库客户端界面工具DBeaver连接hive,并解决驱动下载不下来的问题。

2394
来自专栏崔庆才的专栏

一言不合就改成 777 权限?会出人命的!

最近和几个朋友开发项目,期间使用了一台服务器跑模型,这台服务器是多人公用的,很多人都在上面有自己的账号,互不干涉内政,一切看起来十分井然有序。

4633
来自专栏北京马哥教育

MySQL高可用,数据之船不再翻

前言 上篇文章我们介绍了使用pacemkaer+corosync实现简单的nginx高可用, 这篇文章我们介绍如何使用pacemaker+corosync实现M...

2976
来自专栏Hadoop实操

HDFS添加 NFS Gateway 角色实例启动失败问题及解决办法

昨天登录公司测试集群的时候,发现HDFS存在告警信息,查看详细信息,发现 NFS Gateway 进程退出,尝试重启该角色实例,执行重启操作后,报如下异常:

1.3K3

扫码关注云+社区

领取腾讯云代金券