通过Cache::Memcached方式 实例对象应用

 

 

新创建一个客户端连接对象使用new来完成,例如:

 

 

    创建一个新的客户端对象,在这里可以设置服务器连接,即‘servers’,当然也可以使用set_servers方法来设置。我们先看以下例子:

   

$memd = new Cache::Memcached {

    'servers' => [ "10.0.0.15:11211", "10.0.0.15:11212",

 "/var/sock/memcached",

                   "10.0.0.17:11211", [ "10.0.0.17:11211", 3 ] ],

    'debug' => 0,

    'compress_threshold' => 10_000,

  };

   

server的设置 它是以数组的形式实现的,数组中的值可以是TCP套接字,即“IP:端口”的形式,例如,"10.0.0.15:11211",如果没有知道端口,那么将会使用默认的端口号,即11211.也可以使用Unix套接字的形式,例如, "/var/sock/memcached"。另外,我们还注意到[ "10.0.0.17:11211", 3 ]这个格式,在这个格式中最后的“3”是一个加权值,如果没有指定,那么默认的值就是1。推荐使用仅可能低的值,因为这个模块当前分配内存时采用的所有Memcached服务器中的权重然后按比例分配。

 

    'debug' => 0,  它的值有01之选,如果设置为0,那么将会关闭调试信息,如果设置为1,则会打开调试信息。

 

    'compress_threshold' => 10_000,  直接的称呼可以叫做它“压缩门限值”,该选项就是用于设置一个门限值,一旦存储的value超过这个大小,那么将会对存储的value进行压缩,它的单位是字节。在通过get操作读取时会再次进行解压。当然,这个值在实例化之后还是可以通过函数改变的,不是这里一旦设置完成就会一成不变的,具体的做法是通过set_compress_threshold()来改变。

 

    另外,还可以设置以下选项。

 

no_rehash 如果将它的值设置为1,即’no_rehash’=>0,那么当一台Memcached服务器出了问题,比如宕机或者是其它的问题,那么该客户端实例不会尝试寻求其它的Memcached服务器,相反,如果设置为0,那么在出现问题时将会需求其它的Memcached服务器。

 

readonly  如果将该选项的值设置为1,那么这个客户端实例只能从Memcached服务器中读取数据,而不能够想其中写入数据,如果设置为0,那么则是可读、可写。这个选项在一定意义上非常有用。

 

    namespace  按照编程或者Linux的术语应该叫它命名空间,它的功能也大概确实如此,如果设置了该项,那么缓存中所有的key前都有这个设置的值,例如,我们将命名空间设置为"app1:",那么如果设置一组key-value"foo" "bar",在Memcached服务器中最终实际是"app1:foo" "bar"

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/27043155/viewspace-732401/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/27043155/viewspace-732401/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值