版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Memcache+Cookie解决分布式系统共享登录状态讲师:王承伟软件从单机到分布式走向分布式第一步就是解决:多台机器共享登录信息的问题。
例如:现在有三台机器组成了一个Web的应用集群,其中一台机器用户登录,然后其他另外两台机器共享登录状态?
解决1:AspNet
进程外的Session。
解决2:用数据库存储当前登录状态。
解决3:Memcache
【性能最好,类似的:Redis,NoSql】IIS1客户端IIS2IIS3Why
Memcached?高并发访问数据库的痛楚:死锁!磁盘IO之痛:多客户端共享缓存Net
+
Memory >>IO读写性能完美1s:读取可以1w次。写:10w超简单集群搭建Cluster开源OpenSource没有提供主从赋值功能,也没提供容灾等功能,所以所有的代码基本都只是考虑性能最佳。(Redis)学习成本非常低,入门非常容易丰富的成功的案例Memcache
基础原理Socket
服务器端数据:键值对存储内存处理的算法:
本质就是一个大的哈希表。key最大长度是255个字符。
内存模型:Memcache预先将可支配的内存空间进行分区(Slab),每个分区里再分成多个块(Chunk)大小1MB,但同一个分区里:块的长度(bytes)是固定的。
插入数据:查找适合自己长度的块,然后插入,会有内存浪费。
LRU,闲置>过期>最少访问
惰性删除:它并没有提供监控数据过期的机制,而是惰性的,当查询到某个key数据时,如果过期那么直接抛弃。集群搭建原理:
Memcache服务器端并没有提供集群功能,但是通过客户端的驱动程序实现了集群配置。
客户端实现集群的原理:首先客户端配置多台集群机器的ip和端口的列表。然后客户端驱动程序在写入之前,首先对key做哈希处理得到哈希值后对总的机器的个数进行取余然后就选择余数对应的机器。Windows下使用Memcache下载Memcache:将服务程序拷贝到一个磁盘上的目录安装服务:cmd→Memcached.exe-d
install
打开服务监控窗口可以查看服务是否启动。启动服务:cmd→Memcached.exe-d
start(restart重启,stop关闭服务)检查服务是否启动:连接到Memcache控制台:telnet
ServerIP11211
输入命令:stats检查当前服务状态。卸载服务:Memcached.exe-d
uninstall(先关闭服务)遇到问题:win8下安装服务。无法启动此程序,因为计算机中丢失MSVCR71.dll。尝试重新安装该程序以解决此问题。下载dll地址:C#操作Memcache添加程序集引用在项目中添加代码:String[]
serverlist
=
{
"192.168.1.100:11211","192.168.1.101:11211"
};//
initialize
the
pool
for
memcache
serversSockIOPool
pool
=
SockIOPool.GetInstance("test");pool.SetServers(serverlist);pool.Initialize();mc
=
new
MemcacheClient();mc.PoolName
=
"test";mc.EnableCompression
=
false;pool.Shutdown();//关闭连接池Cookie+Memcache模拟Session保持登录状态创建登陆页面使用Memcache记录登录用户信息用Cookie模拟登录用户的会话用户登录成功之后,在往客户端写入一个cookie信息【生成一个会话id】来标识当前用户对应的会话信息
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026党员思想动态及党员教育工作调查报告(2篇)
- 护理常规操作流程
- 2026道德与法治三年级阅读角 阅读玄奘西游记
- 2026 三年级语文核心素养梳理与探究课件
- 2026四年级道德与法治上册 体谅父母从心开始
- 国家护理数据平台概述
- 2026六年级数学下册 百分数学习习惯
- 外科静脉输液管路护理
- 2026年芭蕾附中招生考试试题及答案
- 2026年祁东成章招生试卷及答案
- 2025年演出经纪人演出经纪实务考试题库(新版)
- TRIZ创新方法(大连理工大学)超星尔雅学习通章节测试答案
- 中心传动浓缩机安装方案
- 城市道路桥梁工程施工质量验收规范 DG-TJ08-2152-2014
- 如何提高小学英语学习兴趣及积极性
- 小升初衔接数学讲义
- 乳腺穿刺活检术手术知情同意书
- 消控室人员培训消防安全培训幻灯片课件
- 灵活巧妙的剪刀(课件)
- 幼儿园大班语言教案《小鸡球球和向日葵》绘本故事PPT课件【幼儿教案】
- 四位数乘四位数乘法题500道
评论
0/150
提交评论