立众 發表於 2023-8-21 00:00:00

ubuntu+php环境下的Memcached 安装方法

<p>
        目前被很多系统所使用,例如Flick、Twitter等。这是一套开放源代码软件,以BSD license授权发布。下面记录一下在lamp环境下的Memcached安装。关于Memcached的应用,这里有两篇不错的文章:《应用 memcached 提升站点性能》、《Discuz!的Memcache缓存实现》<br><br><strong>使用apt安装memcached</strong><br>
        apt-get install memcached<br>
        启动memcached<br>
        1. 终端下使用命令 memcached就可以启动 。例如 memcached -d。<br>
        2. 各个选项说明:<br>
        -d选项是启动一个守护进程,<br>
        -m是分配给Memcached使用的内存数量,单位是MB。<br>
        -u是运行Memcached的用户。<br>
        -l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200。<br>
        -p是设置Memcached监听的端口,默认是11211。<br>
        -c选项是最大运行的并发连接数,默认是1024。<br>
        -P是设置保存Memcached的pid文件,例如 /tmp/memcached.pid。<br>
        3. 测试memcached。官方有提供一telnet例子。</p>
<p class="codetitle">
        <span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
        <br>
        $ telnet localhost 11211<br>
        Trying 127.0.0.1...<br>
        Connected to localhost.<br>
        Escape character is '^]'.<br>
        get foo<br>
        VALUE foo 0 2<br>
        hi<br>
        END<br>
        stats<br>
        STAT pid 8861</p>
<p>
        <br><strong>(etc)安装PHP的memcached拓展 </strong><br>
        #sudo apt-get install php5-memcache<br>
        编辑 /etc/php5/apache2/php.in,添加以下内容。(这一步骤参考了网上的配置,并不是最少的配置)。<br>
        <br>
        ; 是否在遇到错误时透明地向其他服务器进行故障转移。<br>
        memcache.allow_failover = On<br>
        ; 接受和发送数据时最多尝试多少个服务器,只在打开memcache.allow_failover时有效。<br>
        memcache.max_failover_attempts = 20<br>
        ; 数据将按照此值设定的块大小进行转移。此值越小所需的额外网络传输越多。<br>
        ; 如果发现无法解释的速度降低,可以尝试将此值增加到32768。<br>
        memcache.chunk_size = 8192<br>
        ; 连接到memcached服务器时使用的默认TCP端口。<br>
        memcache.default_port = 11211<br><strong>PHP环境下的Memcached测试</strong></p>
<p class="codetitle">
        <span><u>复制代码</u></span> 代码如下:</p>
<p class="codebody">
        <br>
        &lt;?php<br>
        $memcache = new Memcache;<br>
        $memcache-&gt;connect('localhost', 11211) or die ("Could not connect");<br>
        $version = $memcache-&gt;getVersion();<br>
        echo "Server's version: ".$version."&lt;br/&gt;\n";<br>
        $tmp_object = new stdClass;<br>
        $tmp_object-&gt;str_attr = 'test';<br>
        $tmp_object-&gt;int_attr = 123;<br>
        $memcache-&gt;set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");<br>
        echo "Store data in the cache (data will expire in 10 seconds)&lt;br/&gt;\n";<br>
        $get_result = $memcache-&gt;get('key');<br>
        echo "Data from the cache:&lt;br/&gt;\n";<br>
        var_dump($get_result);<br>
        ?&gt;</p>
頁: [1]
查看完整版本: ubuntu+php环境下的Memcached 安装方法