当前位置:首页 > CN2资讯 > 正文内容

php memcache

2天前CN2资讯

CentOS 5.5下安装memcache

   

在一般情况下,CentOS已经默认安装了libevent的二进制库,但是没有安装相应的开发所用的头文件。
所以,你可以使用如下命令来安装:

yum install libevent-devel

接着可以去http://memcached.org/下载最新的memcached发布版本。
解压缩:
tar -xzvf memcached-1.4.4.tar.gz

配置:
cd memcached-1.4.4
./configure –with-libevent=/usr/

备注:如果 libevent 不是安装在 /usr 目录下,那么需要把 .1  拷贝/链接到    /usr/lib 中,否则memcached在配置的时候会报找不到libevent。

编译:
make

安装:
make install

启动:
memcached -l 127.0.0.1 -d -p 11211 -u nobody -m 1024

上面的命令中-d表示用 daemon 的方式启动 memcached,-l和-p组合表示监听在 192.168.10.60 的 11211 端口上(如果不用-p指定端口号,则memcached将运行在11211端口上),-u表示运行用户为 nobody,-m表示为其分配1024MB 的内存。

测试:
可以使用telnet连接到192.168.10.60的11211端口,连接成功以后,
先向memcached中添加一个key-value对,key为test1(后面的0 0 10所表示的具体含义,在下一篇文章中会详细介绍),value为testing001:
set test1 0 0 10
testing001
STORED

再从memcached中取回key为test1所对应的value:
get test1
VALUE test1 0 10
testing001
END

注:上面粗体表示系统输出的内容

如果能看到类似的输出,则证明memcached已经正确配置并启动成功了。

安装php-memcache扩展
下载:http://pecl.php.net/get/memcache-2.2.4.tgz

#解压安装
$ tar -zxvf memcache-2.2.4.tgz
$ cd memcache-2.2.4
$ /usr/local/php/bin/phpize
$ ./configure --with-php-config=/usr/local/php/bin/php-config --enable-memcache
$ make

$ make test

$ mkdir /usr/local/php/extensions/
$ cp modules/ /usr/local/php/extensions/

#在php.ini中加入扩展
[vi /usr/local/lib/php.ini]
extension_dir = "/usr/local/php/extensions/"
extension     = ""

重新启动apache即可

5. 测试

下载: memcache.php
  • <?php
  •     $mc = new Memcache;
  •     $mc->connect("127.0.0.1",11211);
  •     $item = $mc->get('item');
  •     if(!is_array($item)){
  •         echo "Add item to memcache";
  •         $mc->add('item',array('item'));
  •     }
  •     $item = $mc->get('item');
  •     var_dump($item);
  • ?>
  •  

    启动

     memcached -d -m 10 -u root -l 202.207.177.177 -p 11211 -c 256 -P /tmp/memcached.pid

       参数说明

  • -d选项是启动一个守护进程,  
  • -m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,  
  • -u是运行Memcache的用户,我这里是root,  
  • -l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址202.207.177.177,  
  • -p是设置Memcache监听的端口,我这里设置了11211,最好是1024以上的端口,  
  • -c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,  
  • -P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid, 
  •  &查看状态

    pid memcache服务器的进程ID
    uptime服务器已经运行的秒数
    time 服务器当前的unix时间戳
    version memcache 版本
    pointer_size 当前操作系统的指针大小(32位系统一般是32bit)
    rusage_user 进程的累计用户时间
    rusage_system 进程的累计系统时间
    curr_items 服务器当前存储的items数量
    total_items 从服务器启动以后存储的items总数量
    bytes 当前服务器存储items占用的字节数
    curr_connections 当前打开着的连接数
    total_connections 从服务器启动以后曾经打开过的连接数
    connection_structures 服务器分配的连接构造数
    cmd_get get命令(获取)总请求次数
    cmd_set set命令(保存)总请求次数
    get_hits 总命中次数
    get_misses 总未命中次数
    evictions 为获取空闲内存而删除的items数(分配给memcache的空间用满后需要删除旧的items来得到空间分配给新的items)
    bytes_read 总读取字节数(请求字节数)
    bytes_written 总发送字节数(结果字节数)
    limit_maxbytes 分配给memcache的内存大小(字节)
    threads 当前线程数 

     &关闭服务

     kill `cat /tmp/memcached.pid`

      &监控服务

    1.利用本附件的memadmin-1.0.12.tar.gz来监控

     2.利用nagios监控

       安装插件后定义命名在vi commands.cfg,加入

     define command {
            command_name check_memcached
            command_line $USER1$/check_memcached -H $HOSTADDRESS$:$ARG1$ --size-warning 92 --size-critical 95
                  }
     

       添加对memcache监控

    define service{
            use generic-service; Name of service template to use
            host_name waptx-5-111.waptx.com
            service_description check_memcached_32004
            servicegroups Memcached
            check_command check_memcached!32004
    }
     

     

    memcache客户端

    各种memcache客户端API

    http:///p/memcached/wiki/Clients

    总结:

    1.更改php.ini,需要重启php-fpm 语法:/usr/local/php/sbin/php-fpm restart

    2.若想在编译PHP时指定配置文件路径,加上:--with-config-file-path=/etc ,些路径需要是存在的路径,否则php.ini无法写入

    3.找不到php.ini时,系统启用默认配置模式

    4.将php.ini文件所有路径加入系统变量也可解决此问题(未偿试)

      你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/26120.html

      标签: phpmemcache
      分享给朋友:
      返回列表

      上一篇:PHP Session

      下一篇:Php函数Happy

      “php memcache” 的相关文章

      RackNerd VPS:超高性价比与稳定服务的完美选择

      引言 在如今的网络环境中,选择一家合适的VPS服务商无疑是一个关键决策。很多人可能对market上的多个选项感到无从选择。RackNerd作为一家美国成立的VPS主机商,凭借其超高性价比迅速进入了大众视野。特别是在一年一度的黑五促销活动中,RackNerd常常引发热潮,其 $10/年的价格实在让人不...

      如何开启BBR查询并提升TCP网络性能

      BBR(Bottleneck Bandwidth and Round-trip propagation time)是一种由Google开发的TCP拥塞控制算法,我对它的了解让我感到非常兴奋。BBR旨在通过精确的网络条件监测,以提高传输速度和稳定性。传统的拥塞控制算法往往依赖于丢包率的变化来调整传输速...

      域名注册商选择指南:如何找出最佳域名注册商

      域名注册商是帮助个人和企业在互联网中获取唯一标识的机构或公司。简而言之,域名注册商提供域名注册、管理和保护的服务。通过这些服务,我们可以确保域名的合法性和有效性,维护我们的在线身份。在现代网络环境中,拥有一个合适的域名是构建品牌形象和促进业务发展的重要一步。 在选择域名注册商时,首先要考虑它们在市场...

      HostDare VPS主机服务评测:高性价比与用户体验的完美结合

      在与HostDare的互动中,我感受到这家公司在客户支持与用户体验方面的一些亮点和不足。正如我们所知,HostDare是一家致力于提供高性价比VPS主机服务的公司,尤其在针对中国大陆用户的优化上表现突出。虽然服务上有一些待改善之处,但总体而言,它的客户支持体系还是相对高效的。 首先,HostDare...

      内部错误解决指南:快速识别与处理方法

      一说到“内部错误”,我们很多人可能会感到一头雾水。其实,内部错误是指在计算机系统或程序内部发生的那种错误。这类错误通常是由于系统内部的某些故障所造成的,或是程序代码本身的一些问题。如果我们把计算机比作一个庞大的工厂,那么内部错误就像是工厂里机器运转不畅或部件失灵,导致整个生产线出现问题。 理解内部错...

      解决Hostodo官网无法打开的问题的有效方法

      在使用 Hostodo 官网时,偶尔会遇到无法打开的情况。这种情况可能让人感到无助,尤其是当你迫切需要访问相关信息时。让我来分享一些常见原因,帮助你更好地理解。 首先,服务器的维护或故障是一个普遍的原因。当网站进行定期更新或修复时,服务器可能会暂时不可用。通常,官方会提前通知用户,然而,有时我们无法...