.NET分布式缓存Memcached如何从入门到实战
导读:本文共3307.5字符,通常情况下阅读需要11分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: Memcached读取操作二、概念名称含义解释2.1、什么是Memcached?Memcached是一个自由开源的,高性能,分布式于内存的key-value存储内存对象缓存系统。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon)是用C写的,但是... ...
目录
(为您整理了一些要点),点击可以直达。- (3):2.1、什么是Memcached?
- (6):2.2、Memcached的优势和不足
- (13):3.1、Memcached在Windows系统安装手册
- (15):1)、Windows下Memcache安装步骤:
- (21):3.2、Memcached配置说明手册
- (24):-p监听的端口
- (25):-l连接的IP地址, 默认是本机
- (26):-d start 启动memcached服务
- (27):-d restart 重起memcached服务
- (28):-d stop|shutdown 关闭正在运行的mem
- (29):-d install 安装memcached服务
- (30):-d uninstall 卸载memcached服务
- (32):-m最大内存使用,单位MB。默认64MB
- (33):-M 内存耗尽时返回错误,而不是删除项
- (34):-c最大同时连接数,默认是1024
- (35):-f块大小增长因子,默认是1.25
- (36):-n最小分配空间,key+value+flags默认是
- (37):-h 显示帮助
Memcached读取操作
二、概念名称含义解释
2.1、什么是Memcached?
Memcached是一个自由开源的,高性能,分布式于内存的key-value存储内存对象缓存系统。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon)是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。
有的童鞋在学完阿笨的《.NET分布式缓存Redis从入门到实战》课程的时候提问怎么理解分布式。那么何为分布式?简单的从字母上意思理解就是说它不是本地的。
2.2、Memcached的优势和不足
优势:
速度快,操作简便,易扩展
不足:
1)、数据的临时性(数据仅保存在内存中)。
2)、只能通过指定键来读取数据,不支持模糊查询。
需要注意的是,memcached使用内存管理数据,所以它是易失的,当服务器重启,或者memcached进程中止,数据便会丢失,所以memcached不能用来持久保存数据。
三、Memcached安装和配置手册
3.1、Memcached在Windows系统安装手册
一般情况下,我们用linux作为生产环境,但是开发还是在windows下面,所以我们需要 windows版本。但是memcache官方网站只提供了源码,因此必须使用第三方编译的Windows版本。
1)、Windows下Memcache安装步骤:
1、下载memcache for windows。下载地址:http://downloads.northscale.com/memcached-win64-1.4.4-14.zip,解压到d:\memcached。
2、在命令行状态下输入: d:\memcached\memcached.exe -d install 。至此memcached已经安装成windows服务。
3、在命令行下输入: d:\memcached\memcached.exe -d start 以启动memcached服务。当然也可以选择在windows服务中启动。
就是这么简单,简简单单的三步memcache的服务器端就准备完毕。
2)、设置memcachedd的默认端口和最大内存。memcached服务默认占用的端口是11211,占用的最大内存默认是64M。
如果需要修改这两个参数,比如修改端口为10000,内存为512,
则输入: D:\memcached\memcached.exe -p 10000 -m 512 -d start , -p 表示要修改的端口, -m表示 占用的最大内存(单位为M)
3.2、Memcached配置说明手册
telnet 127.0.0.1 11211 键入stats可以查看当前Memcached的版本以及配置信息
memcached的基本设置:
-p监听的端口
-l连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u以的身份运行 (仅在以root运行的时候有效)
-m最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c最大同时连接数,默认是1024
-f块大小增长因子,默认是1.25
-n最小分配空间,key+value+flags默认是48
-h 显示帮助
3.3、Memcached可视化客户端GUD管理及监控工具安装手册
TreeNMS是一款 Redis,Memcache可视化客户端工具,采用JAVA开发,实现基于WEB方式对Redis, Memcached数据库进行管理、维护。
TreeNMS
四、.NET Memcached实战演练分享
4.1、.NETMemcached牛刀小试
1)、NET SDK之Enyim.Caching修炼手册,看这一篇就足够了。
Enyim.Caching修炼手册
2)、NET SDK之MemcachedClientLibrary修炼手册,看这一篇就足够了。(强烈推荐使用)
MemcachedClientLibrary修炼手册
3)、NET SDK之ServiceStack修炼手册,看这一篇就足够了。
ServiceStack修炼手册
4.2、在ASP.NET中Memcached如何进行Session托管
MemcachedSessionProvider
https://github.com/rohita/MemcachedSessionProvider
实际项目中强烈建议使用Redis作为存储!
五、课后思考与总结
5.1、思考
1)、什么时候选择使用Memached和Redis?
简单的Key/Value应用场景(例如缓存),Memcached拥有更高的读写性能;而在数据持久化和数据同步场景,Redis拥有更加强大的功能和更为丰富的数据类型。2)、Memached的持久化和高可用变种产品
memcachedb是新浪网基于Memcached开发的一个开源项目,使Memcached具备了事务恢复能力、持久化能力。
repcached是日本人开发的基于Memcached的一个patch,实现Memcached的复制功能,它支持多个Memcached之间相互复制,可以解决 容灾问题。
memcacheQ在Memcached的基础上实现了消息队列。5.2、总结:
由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。 另外,内容容量达到指定值之后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存。memcached本身是为缓存而设计的服务器,因此并没有过多考虑数据的永久性问题。NoSQL中比较优秀的一款产品:Redis,比较好地解决了数据持久化的这个问题,重启Redis不会导致数据丢失。
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
.NET分布式缓存Memcached如何从入门到实战的详细内容,希望对您有所帮助,信息来源于网络。