ubuntu12.04 memcache 安装

1.在/etc/apt/source.list中添加源

 deb http://security.ubuntu.com/ubuntu hardy-security main universe  

执行 sudo apt-get update

2.安装Memcache服务端

sudo apt-get install memcached

安装完Memcache服务端以后,启动该服务:

memcached -d -m 128 -p 11111 -u root

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 显示帮助

 

memcached是用C写的一个daemon程序,在Linux下支持epoll。运行方法很简单:
./memcached -d -m 1024 -l 192.168.1.102 -p 7789
./memcached -d -m 1024 -l 192.168.1.102 -p 7790
这表示在同一机器上运行2个memcached,每个使用1G内存,一个侦听在7789端口,一个侦听在7790端口。这样可以实现负载均衡,并且一个daemon down掉了,数据会继续在另一个daemon里读写。而真正分布式的应用体现在多主机,多daemon上,就是说完全可以这样运行:
./memcached -d -m 1024 -l 1.1.1.1 -p 1111
./memcached -d -m 1024 -l 1.1.1.1 -p 2222
./memcached -d -m 1024 -l 2.2.2.2 -p 1111
./memcached -d -m 1024 -l 2.2.2.2 -p 2222

....
直到无穷。
这样可以实现高效的负载均衡。在web主机上,通常web进程(如Apache)是CPU敏感,内存不那么敏感的。而memcached典型的是耗内存不耗CPU。因此可将memcached直接跑在前台web主机上,作为数据缓存(或数据库连接池)使用,也就是在web程序与数据库之间多加了一层。

 

 

3.安装Memcache客户端 
sudo apt-get install php5-memcache
安装完以后我们需要在php.ini里进行简单的配置,打开vim /etc/php5/cgi/php.ini文件在末尾添加如下内容:

[Memcache]

; 一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,
; 它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。

; 是否在遇到错误时透明地向其他服务器进行故障转移。
memcache.allow_failover = On

; 接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。memcache.max_failover_attempts = 20

; 数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。
; 如果发现无法解释的速度降低,可以尝试将此值增加到32768。
memcache.chunk_size = 8192

; 连接到memcached服务器时使用的默认TCP端口。
memcache.default_port = 11111

; 控制将key映射到server的策略。默认值”standard”表示使用先前版本的老hash策略。
; 设为”consistent”可以允许在连接池中添加/删除服务器时不必重新计算key与server之间的映射关系。
;memcache.hash_strategy = “standard”; 控制将key映射到server的散列函数。默认值”crc32″使用CRC32算法,而”fnv”则表示使用FNV-1a算法。
; FNV-1a比CRC32速度稍低,但是散列效果更好。
;memcache.hash_function = “crc32″

 

 

posted @ 2012-12-07 17:06  Arya_yu  阅读(240)  评论(0编辑  收藏  举报