A-A+

Memcached原理及Linux下安装部署

2016年08月03日 Linux 教程 暂无评论 阅读 835 次

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。 memcached缺乏认证以及安全管制,这代表应该将memcached服务器放置在防火墙后。 memcache的工作流程如下:先检查客户端的请求数据是否在memcached中,如有,直接把请求数据返回,不再对数据库进行任何操作;如果请求的数据不在memcached中,就去查数据库,把从数据库中获取的数据返回给客户端,同时把数据缓存一份到memcached中(memcached客户端不负责,需要程序明确实现);每次更新数据库的同时更新memcached中的数据,保证一致性;当分配给memcached内存空间用完之后,会使用LRU(Least Recently Used,最近最少使用)策略加上到期失效策略,失效数据首先被替换,然后再替换掉最近未使用的数据。

给 php 添加 memcache 模块

[[email protected] ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/lnmp/mysql/bin:/root/bin
[[email protected] ~]# vim /etc/profile
@@@@@@
79 PATH=$PATH:/usr/local/lnmp/mysql/bin:/usr/local/lnmp/php/bin
@@@@@@
[[email protected] ~]# source /etc/profile
[[email protected] ~]# tar zxf memcache-2.2.5.tgz
[[email protected] ~]# cd memcache-2.2.5
[[email protected] memcache-2.2.5]# phpize
Configuring for:
PHP Api Version: 20100412
Zend Module Api No: 20100525
Zend Extension Api No: 220100525
[[email protected] memcache-2.2.5]# ./configure --enable-memcache
[[email protected] memcache-2.2.5]# make && make install
[[email protected] memcache-2.2.5]# ll
/usr/local/lnmp/php/lib/php/extensions/no-debug-non-zts-20100525/memcache.so
-rwxr-xr-x 1 root root 259040 Jan 16 14:00 memcache.so
[[email protected] memcache-2.2.5]# vim /usr/local/lnmp/php/etc/php.ini
@@@@@@
845 extension=memcache.so
@@@@@@
[[email protected] memcache-2.2.5]# /etc/init.d/fpm reload
[[email protected] memcache-2.2.5]# cd /usr/local/lnmp/nginx/html
[[email protected] html]# vim index.php
@@@@@@
1 <?php
2 phpinfo()
3 ?>
@@@@@@

在浏览器中打开这个php页面 可以看到memcache相关信息

[[email protected] html]# nginx -t
nginx: the configuration file /usr/local/lnmp/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/lnmp/nginx/conf/nginx.conf test is successful
[[email protected] html]# nginx -s reload
[[email protected] ~]# php -m | grep memcache ##说明 php 中添加 memcache 模块成功
memcache

安装memcached

[[email protected] ~]# yum install -y memcached
[[email protected] ~]# /etc/init.d/memcached start
Starting memcached:                                        [  OK  ]
[[email protected] ~]# vi /etc/sysconfig/memcached
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""
~   
[[email protected] ~]# memcached-tool 127.0.0.1:11211 stats
#127.0.0.1:11211  Field      Value
        accepting_conns          1
              auth_cmds          0
            auth_errors          0
                  bytes          0
              bytes_read        799
          bytes_written      38165
              cas_badval          0
                cas_hits          0
              cas_misses          0
              cmd_flush          0
                cmd_get          0
                cmd_set          0
            conn_yields          0
  connection_structures          11
        curr_connections          10
              curr_items          0
              decr_hits          0
            decr_misses          0
            delete_hits          0
          delete_misses          0
              evictions          0
                get_hits          0
              get_misses          0
              incr_hits          0
            incr_misses          0
          limit_maxbytes    67108864
    listen_disabled_num          0
                    pid        5154
            pointer_size          64
          rusage_system    0.121981
            rusage_user    0.068989
                threads          4
                    time  1469970117
      total_connections          93
            total_items          0
                  uptime        5637
                version      1.4.4

memcached安装成功

CentOS 6.6下Memcached 源码安装配置  2015-09/123019.htm

Memcached 安装及启动脚本 2013-07/87641.htm

PHP中使用Memcached的性能问题 2013-06/85883.htm

Ubuntu下安装Memcached及命令解释 2013-06/85832.htm

Memcached的安装和应用 2013-08/89165.htm

使用Nginx+Memcached的小图片存储方案 2013-11/92390.htm

Memcached使用入门 2011-12/49516p2.htm

Memcached 的详细介绍请点这里
Memcached 的下载地址请点这里

给我留言

Copyright © SEARU.ORG 保留所有权利.   Theme  Ality 网站地图 360网站安全检测平台

用户登录

分享到: