Memcached的安装和使用
来源:互联网 发布:emba和mba知乎 编辑:程序博客网 时间:2024/06/05 06:47
1
2
# wget http://nchc.dl.sourceforge.net/project/levent/libevent/libevent-2.0/libevent-2.0.22-stable.tar.gz ##网络库,memcached所依赖的异步事件通知库
# wget http://memcached.org/files/memcached-1.4.25.tar.gz
1
2
3
4
# tar -zxvf libevent-2.0.22-stable.tar.gz
# cd libevent-2.0.22-stable
# ./configure --prefix=/usr/local/libevent
# make & make install
1
2
3
4
# tar -zxvf memcached-1.4.25.tar.gz
# cd memcached-1.4.25
# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
# make & make install
1
2
3
4
5
6
7
# cp memcached-1.4.25/scripts/memcached.sysv /etc/init.d/memcached
# vi /etc/init.d/memcached
prog=
"/usr/local/memcached/bin/memcached"
##更改该处的memcached路径
daemon $prog -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P
/var/run/memcached/memcached
.pid $OPTIONS
##将memcached改为$prog,也可改为具体路径
# systemctl daemon-reload ##重启所有守护进程
# systemctl start memcached
# ss -tlnp
1
2
3
# /usr/local/bin/memcached -d -m 128 -u root -p 11211 -c 256 -P /var/run/memcached.pid ##启动memcached
# ss -tlnp
# kill `cat /var/run/memcached.pid` ##关闭memcached
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# telnet 127.0.0.1 11211 ##测试memcached
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is
'^]'
.
stats
##查看memcached状态
STAT pid 11808
##进程ID
STAT uptime 1008
##服务器已运行秒数
STAT
time
1449555354
##服务器当前Unix时间戳
STAT version 1.4.25
##memcached版本
STAT libevent 2.0.22-stable
##libevent版本
STAT pointer_size 64
##服务器为64位
STAT rusage_user 0.007571
##进程累计用户时间
STAT rusage_system 0.045427
##进程累计系统时间
STAT curr_connections 10
##当前连接数量
STAT total_connections 11
##Memcached运行以来连接总数
STAT connection_structures 11
##Memcached分配的连接结构数量
STAT reserved_fds 20
##内部使用的FD数
STAT cmd_get 0
##get命令请求次数
STAT cmd_set 0
##set命令请求次数
STAT cmd_flush 0
##flush命令请求次数
STAT cmd_touch 0
##touch命令请求次数
STAT get_hits 0
##get命令命中次数
STAT get_misses 0
##get命令未命中次数
STAT delete_misses 0
##delete命令未命中次数
STAT delete_hits 0
##delete命令命中次数
STAT incr_misses 0
##incr命令未命中次数
STAT incr_hits 0
##incr命令命中次数
STAT decr_misses 0
##decr命令未命中次数
STAT decr_hits 0
##decr命令命中次数
STAT cas_misses 0
##cas命令未命中次数
STAT cas_hits 0
##cas命令命中次数
STAT cas_badval 0
##使用擦拭次数
STAT touch_hits 0
##touch命令命中次数
STAT touch_misses 0
##touch命令未命中次数
STAT auth_cmds 0
##认证命令处理的次数
STAT auth_errors 0
##认证失败数目
STAT bytes_read 15
##读取总字节数
STAT bytes_written 7
##发送总字节数
STAT limit_maxbytes 67108864
##分配的内存总大小(字节)
STAT accepting_conns 1
##接受新的连接
STAT listen_disabled_num 0
##失效的监听数
STAT time_in_listen_disabled_us 0
STAT threads 4
##当前线程数
STAT conn_yields 0
##连接操作主动放弃数目
STAT hash_power_level 16
##hash表等级
STAT hash_bytes 524288
##当前hash表大小
STAT hash_is_expanding 0
##hash表正在扩展
STAT malloc_fails 0
STAT bytes 0
##当前存储占用的字节数
STAT curr_items 0
##当前存储的数据总数
STAT total_items 0
##启动以来存储的数据总数
STAT expired_unfetched 0
##已过期但未获取的对象数目
STAT evicted_unfetched 0
##已驱逐但未获取的对象数目
STAT evictions 0
##LRU释放的对象数目
STAT reclaimed 0
##已过期的数据条目来存储新数据的数目
STAT crawler_reclaimed 0
STAT crawler_items_checked 0
STAT lrutail_reflocked 0
END
1
2
3
4
# yum -y install gcc gcc-c++ autoconf automake libtool flex bison libxml2-devel gd-devel libmcrypt-devel libcurl-devel openssl-devel
# wget http://cn2.php.net/distributions/php-5.6.16.tar.gz
# wget http://nginx.org/download/nginx-1.9.7.tar.gz
# wget http://pecl.php.net/get/memcache-3.0.8.tgz
1
2
3
4
5
6
7
8
# tar -zxvf php-5.6.16.tar.gz
# cd php-5.6.16
# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-shared --with-libxml-dir --with-gd --with-openssl --enable-mbstring --with-mcrypt --with-mysqli --with-mysql --enable-mysqlnd --enable-zip --with-zlib-dir --with-pdo-mysql --with-jpeg-dir --with-freetype-dir --with-curl
# make
# make install
# cp php.ini-production /usr/local/php/etc/php.ini ##复制php.ini配置文件
# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# cp sapi/fpm/php-fpm.service /etc/init.d/ ##复制php-fpm启动脚本
1
2
3
4
5
6
7
# tar -zxvf memcache-3.0.8.tgz
# cd memcache-3.0.8
# /usr/local/php/bin/phpize
# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-memcache
# make
# make install
Installing shared extensions:
/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
1
2
3
# vi /usr/local/php/etc/php.ini
736 ; extension_dir =
"ext"
737 extension =
/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/memcache
.so
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# groupadd -r nginx
# useradd -r -g nginx nginx
# tar -zxvf nginx-1.9.7.tar.gz
# cd nginx-1.9.7
.
/configure
\
--prefix=
/usr
\
--sbin-path=
/usr/sbin/nginx
\
--conf-path=
/etc/nginx/nginx
.conf \
--error-log-path=
/var/log/nginx/error
.log \
--http-log-path=
/var/log/nginx/access
.log \
--user=nginx \
--group=nginx \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-pcre
# make
# make install
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# /etc/nginx/nginx.conf
server {
listen 80;
server_name localhost;
location / {
root html;
index index.html index.htm index.php;
}
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME
/scripts
$fastcgi_script_name;
include fastcgi.conf;
}
1
2
3
4
5
6
7
8
9
10
11
# vi /usr/html/test.php ##新建测试页面
<?php
$mem = new Memcache;
$mem->connect(
"127.0.0.1"
, 11211) or die(
"Could not connect"
);
$version = $mem->getVersion();
echo
"Server's version: "
.$version.
"<br/>\n"
;
$mem->
set
(
'newkey'
,
'Hello World'
, 0, 600) or die(
"Failed to save data at the memcached server"
);
echo
"Store data in the cache (data will expire in 600 seconds)<br/>\n"
;
$get_result = $mem->get(
'newkey'
);
echo
"$get_result is from memcached server."
;
?>
1
2
3
4
# systemctl start php-fpm
# /usr/sbin/nginx
# systemctl start memcached
# ss -tlnp
1
2
3
4
5
6
7
# vi /usr/local/php/etc/php.ini
1385 [Session]
1386 ; Handler used to store
/retrieve
data.
1387 ; http:
//php
.net
/session
.save-handler
1388 ;session.save_handler = files
1389 session.save_handler = memcache
1390 session.save_path =
"tcp://127.0.0.1:11211"
1
2
3
4
5
6
7
8
9
10
# vi /usr/html/set.php
<?php
session_start();
if
(!isset($_SESSION[
'www.zhi.com'
])) {
$_SESSION[
'www.zhi.com'
] =
time
();
}
print $_SESSION[
'www.zhi.com'
];
print
"<br><br>"
;
print
"Session ID: "
. session_id();
?>
1
2
3
4
5
6
7
8
9
# vi /usr/html/get.php
<?php
session_start();
$memcache_obj = new Memcache;
$memcache_obj->connect(
'127.0.0.1'
, 11211);
$session=session_id();
var_dump($memcache_obj->get($session));
$memcache_obj->close();
?>
1
2
# wget -S http://www.junopen.com/memadmin/memadmin-1.0.12.tar.gz
# mv memadmin /usr/html/
0 0
- memcached的安装和使用
- Memcached的安装和使用
- Memcached的安装和使用
- Memcached安装和使用
- Memcached安装和使用
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用 memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 安装和使用memcached
- 多例模式【Multition Pattern 】
- 使用PHP生成数据字典
- Android onLongClick事件触发的问题
- django cache的简单使用
- CentOS7.0下安装 mysql5.6
- Memcached的安装和使用
- 寒江独钓前辈的第一个例子的编译运行过程
- sdk tar打包
- extjs的头像截图功能的实现
- Shader学习历程(五)——Sprite Shader之简单抠图
- as3.0取整数(四舍五入)、as3取小数点位数代码示例
- ios 日期比较
- 十大编程算法助程序员走上高手之路
- JQuery里面金额的格式化