(转)Windows下的Memcached安装与使用
WHAT
Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。(摘自百度百科)
WHY
Memcached的出现是解决服务器集群多台机器共享信息的问题。
例如:现在有三台机器组成了一个Web的应用集群,其中一台机器用户登录,然后其他另外两台机器如何共享登录状态?
传统的解决方法:1:进程外的Session;2:用数据库存储当前登录状态。速度慢,加大数据库的压力。
Memcached的优势:
读写性能完美 1s:读取可以1w次。 写:10w
开源 Open Source
学习成本非常低,入门非常容易
丰富的成功的案例
缺点:
没有提供主从赋值功能,也没提供容灾等功能,所以所有的代码基本都只是考虑性能最佳。(Redis)
HOW
服务器端
32位:http://code.jellycan.com/files/memcached-1.2.6-win32-bin.zip
64位:http://www.urielkatz.com/projects/memcached-win64/memcached-win64.zip
1. 解压缩文件到c:\memcached
2.以管理员身份运行命令行窗口(cmd.exe)
3. 进入文件所在目录,命令行输入 'memcached.exe -d install'
右键我的电脑->管理->服务 出项以下选项说明安装成功
4. 命令行输入 'memcached.exe -d start' ,该命令启动 Memcached ,默认监听端口为 11211(详细的设置请查阅相关资料)
客户端
代码:
//服务器端列表
string[] serverlist = { "127.0.0.1:11211" };
//初始化池
SockIOPool sock = SockIOPool.GetInstance();
sock.SetServers(serverlist);//添加服务器列表
sock.InitConnections = 3;//设置连接池初始数目
sock.MinConnections = 3;//设置最小连接数目
sock.MaxConnections = 5;//设置最大连接数目
sock.SocketConnectTimeout = 1000;//设置连接的套接字超时。
sock.SocketTimeout = 3000;//设置套接字超时读取
sock.MaintenanceSleep = 30;//设置维护线程运行的睡眠时间。如果设置为0,那么维护线程将不会启动;
//获取或设置池的故障标志。
//如果这个标志被设置为true则socket连接失败,
//将试图从另一台服务器返回一个套接字如果存在的话。
//如果设置为false,则得到一个套接字如果存在的话。否则返回NULL,如果它无法连接到请求的服务器。
sock.Failover = true; //如果为false,对所有创建的套接字关闭Nagle的算法。
sock.Nagle = false;
sock.Initialize();
var mc = new MemcachedClient();
mc.EnableCompression = true; //是否启用压缩数据
mc.Set("hello", "pt girl");//设置 键值
mc.KeyExists("hello");//键 是否存
var msg = mc.Get("hello"); //获取 一个键值
Console.WriteLine(msg);
Console.ReadKey();
mc.Delete("hello");// 删除 键值
msg = mc.Get("hello");
Console.WriteLine(msg);
Console.ReadKey();
(转)Windows下的Memcached安装与使用的更多相关文章
- Windows下的Memcache安装 linux下的Memcache安装
linux下的Memcache安装: 1. 下载 memcache的linux版本,注意 memcached 用 libevent 来作事件驱动,所以要先安装有 libevent. 官方网址:http ...
- Windows下的Memcache安装
Windows下的Memcache安装: 1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memca ...
- Windows下Memcache的安装与在php中使用
memcache dll插件和测试例子下载地址: http://pecl.php.net/package/memcache Windows下Memcache的安装方法 Memcached官方:http ...
- Windows下的Memcache安装与测试教程
Windows下的Memcache安装 1.下载memcache for windows. 下载地址:http://splinedancer.com/memcached-win32/,推荐下载bina ...
- DEDECMS最新5.7版在Windows下的Memcache安装
一,织梦后台后台设置进入系统后台,在[系统基本参数]下面的"性能选项"卡当中,关于memcache进行如下配置: cfg_memcache_enable : 是否启用memcach ...
- Windows下的Memcache安装:
Windows下的Memcache安装:1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached2. 在终端(也即cmd命令界面)下输入 'c:\memcac ...
- Windows下的Memcache安装与Java部署
Windows下的Memcache安装: 1. 下载memcached的windows稳定版,解压放某个盘下面,比如在c:\memcached 2. 在终端(也即cmd命令界面)下输入 ‘c:\mem ...
- windows下memcache扩展安装和搭建
### windows下memcache扩展安装和搭建 背景:在做微信公众号的开发时,token的有效期为7200秒,所以需要对token进行保存,在这选择了memcache作为缓存工具 memcac ...
- Windows下 VM12虚拟机安装OS X 10.11 和VM TOOLS
Windows下虚拟机安装Mac OS X —– VMware Workstation12安装Mac OS X 10.11 本文即将介绍WIN虚拟MAC的教程.完整详细教程(包含安装中的一些问题) [ ...
随机推荐
- 安装JDK,Python SDK及环境变量的配置
JDK 首先是下载安装包 http://pan.baidu.com/share/link?shareid=3261115669&uk=369127748 一般JDK和Jre是一起安装的,提醒大 ...
- apktool+dex2jar+xjad反编译android程序
1 将MyAdroid.apk拷贝到E:\disapk 2 下载apktool1.5.2.tar.bz2 和 apktool-install-windows-r05-ibot.tar.bz2 并解压到 ...
- 分享自制的13套 JQuery Mobile 界面主题(追加4套新款)
15套整合在一起的,其中2套官方+13套自制,款款精致,方便移动开发. 字体默认为微软雅黑. 适配于 JQuery Mobile 1.4.3 下载地址:http://files.cnblogs.com ...
- sandy bridge
SANDY BRIDGE SPANS GENERATIONS Intel Focuses on Graphics, Multimedia in New Processor Design By Li ...
- <停车位>version1.0
<停车卫> 产品需求说明书 文档版本号: Version 1.0 文档编号: xxxx 文档密级: 归属部门/项目: 产品名: 停车卫 子系统名: 编写人: kina 编写日期: 2015 ...
- myeclipse安装flex插件后代码无自动提示及自动补全无效的解决办法
在myeclipse配置flex插件后,可能会产生快捷键的冲突,或者快捷键设置被修改的情况,本文探索其解决办法 在卸载flex插件后,myeclipse的快捷键设置并不会自动还原,这需要我们手动设置. ...
- 多个插件依赖不同版本jQuery问题解决案例
<script src="../../../js/jquery-1.3.2.min.js" type="text/javascript">< ...
- 【转】HTTP POST GET 本质区别详解
一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式:在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交 Http定义了与服务器交互的不同方法,最基本的 ...
- javascript里的封装
用javascript闭包的特性,可以模拟实现私有变量.私有方法. var myObject = =(function(){ var privateValue; function privateMet ...
- html5表单验证
表单验证为终端用户检测无效的数据并标记这些错误,是一种用户体验的优化. 下面展现浏览器自带的验证功能也可在移动端中查看: HTML部分: <!DOCTYPE html> <html ...