C# Memcache分布式缓存简单入门
什么是Memcache?能做什么?
以下是百度的观点:
memcache是一套分布式的高速缓存系统,由LiveJournal的Brad Fitzpatrick开发,但目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著[1] 。这是一套开放源代码软件,以BSD license授权发布。
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。
Memcached是以守护程序(监听)方式运行于一个或多个服务器中,随时会接收客户端的连接和操作。
Memcache客户端包含两组接口,一组是面向过程的接口,一组是面向对象的接口。
使用Memcache的网站一般流量都是比较大的,为了缓解数据库的压力,让Memcache作为一个缓存区域,把部分信息保存在内存中,在前端能够迅速的进行存取。那么一般的焦点就是集中在如何分担数据库压力和进行分布式,毕竟单台Memcache的内存容量的有限的。
说了这么多,主要的普遍用处也就是以下两点:
- [分布式应用]
- [减少数据库压力]
对于刚刚接触到这块的新手来说,还是很让人摸不到头脑的,另一方面,Memcache的配置还是有很多的,在这里把代码贴出来,希望 能够对大家有所帮助。
首先下载Mencache客户端, Memcache.exe
<a href="http://download.csdn.net/download/fengjunkuan2006/4801674">下载地址</a> 不要放在中文目录下
我们发现Memcache.exe 自由几十kb左右,可能新版本会大一点,不过也很正常了,说白了就是一个windows服务,那怎么用这个呢?
打开管理员cmd, cd到你的下载文件的目录
接下来 就是安装了,找到memcache.exe
memcache.exe -d install
这个命令就是安装Memcache服务的,回车后打开任务管理器 -> 服务 ,如果成功的话就会有MemCached Server这个服务了, 进行到这里,那么恭喜Mencache服务安装成功了,接下来就是进行数据的set和get了
其实Memcache是通过Socket来进行数据的传递的,我们需要打开一个Telnet的程序
控制面板 -> 程序 -> 启用或关闭Windows功能 -> Telnet客户端 这个打上勾就行了,然后在控制台输入
telnet 127.0.0.1 11211 默认的端口就是11211
然后回车
提示一下,第一次这个黑框是看不见字的,随便噼里啪啦的敲下后,回车,然后在输入就可以看到字了,不知道是不是一个Bug,然后stats命令是查看状态的,接下来就是如何存值和取值了
set uesr 0 0 5
faker
这样就把faker存在了内存中, 你存在~~~我深深的硬盘中~~~,然而并没有存在硬盘中,而是存在了内存中。
get user
就能把faker找出来了,这里需要注意的是中间的空格,只能有一个,如果有多个的话会报error,到此 ,Memcache的入门就是这些了,如果有哪些地方写的不对了,还请大家多多指教!