分布式内存对象缓存
许多Web 应用程序都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大,访问的集中,就会出现REBMS的负担加重,数据库响应恶化,网站显示延迟等重大影响。
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。 它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。
memcached作为高速运行的分布式缓存服务器,具有以下的特点。
· 协议简单
· 基于libevent的事件处理
· 内置内存存储方式
· memcached不互相通信的分布式
存储方式:
为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。另外,内容容量达到指定值之后,就基于LRU(Least Recently Used)算法自动删除不使用的缓存。memcached本身是为缓存而设计的服务器,因此并没有过多考虑数据的永久性问题。
安装:
从其官方网站(http://memcached.org)下载memcached最新版本。
解压之后放在硬盘的目录下,如:D:\memcached. 然后在运行中输入cmd进入命令行,进入到Memcached.exe 所在的目录,
例如:D:\memcached,然后输入:Memcached –d install 即可完成安装。
Memcached –d uninstall卸载安装
打开services.msc(系统服务)查看:
-p 监听的端口
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-m 最大内存使用,单位MB。默认64MB -c 最大同时连接数,默认是1024 -h 显示帮助
NUGET下载enyim包
Enyim.Caching.dll类库被默认引用到项目中了
在<configSections>节点内部添加以下内容
在</configSections>结束后,添加以下代码:
我们在Models中添加一个用于操作memcached的工具类,以MemCacheHelper命名,并编写代码: 引用命名空间: using Enyim.Caching;
Memcached是一个*开源的,高性能,分布式内存对象缓存系统。 Memcached简洁而强大。它的简洁设计便于快速开发,减轻开发难度,解决了大数据量缓存的很多问题。 本质上,它是一个简洁的key-value存储系统。