win7下memcached的安装
一、下载memcached的稳定版本,然后解压到某个目录下面,我放到了d:\app\memcached下载链接
二、找到c:\WINDOWS\system32\cmd.exe,右键以管理员身份运行,否则会报错,切换到memcached目录下面,
安装
memcached.exe –d install 启动
memcached.exe -d start
三、下载php_memcache.dll,请自己查找对应的php版本的文件,我的是php5.3.5,注意如果是apache就下VC6的
下载链接
四、把php_memcache.dll放到php的ext目录下,在php.ini中加入如下代码:
extension=php_memcache.dll memcache.allow_failover = 1 memcache.max_failover_attempts=20 memcache.chunk_size =8192 memcache.default_port = 11211
五、测试php的运行
<?php $mem = new Memcache;$mem->connect('127.0.0.1', 11211);$mem->set('key', ' a value', 0, 60);$val = $mem->get('key');echo $val; 如果成功会输出:a value
六、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 显示帮助
七、Java客户端代码的编写:
import java.util.Date;import com.danga.MemCached.*;public class BasicTest { private static final String POOL_NAME="test_pool"; protected static MemCachedClient mcc; static {//设置缓存服务器列表,当使用分布式缓存的时,可以指定多个缓存服务器String[] servers ={ "127.0.0.1:11211"};//与服务器列表中对应的各服务器的权重Integer[] weights = {3};//创建Socked连接池SockIOPool pool = SockIOPool.getInstance(POOL_NAME);//向连接池设定服务器和权重pool.setServers( servers );pool.setWeights( weights ); //连接池参数pool.setInitConn( 5 );pool.setMinConn( 5 );pool.setMaxConn( 250 );pool.setMaxIdle( 1000 * 60 * 60 * 6 );// set the sleep for the maint thread// it will wake up every x seconds and// maintain the pool sizepool.setMaintSleep( 30 );// set some TCP settings// disable nagle// set the read timeout to 3 secs// and don't set a connect timeoutpool.setNagle( false );pool.setSocketTO( 3000 );pool.setSocketConnectTO( 0 );// initialize the connection poolpool.initialize();// lets set some compression on for the client// compress anything larger than 64kmcc=new MemCachedClient(POOL_NAME);mcc.setCompressEnable( true );mcc.setCompressThreshold( 64 * 1024 ); } public static void main(String[] args) throws Exception{ mcc.set("msg","Hello,world!",new Date(System.currentTimeMillis()+1300));Thread.sleep(500);System.out.println(mcc.get("msg")); }} ps:附近中为win32的memcached1.2.4和php5.3 vc6的memcached的dll文件
页:
[1]