文档章节

Zend Framework 2 : 在项目中配置memcached 缓存。

phpy
 phpy
发布于 2014/02/26 09:14
字数 445
阅读 900
收藏 4

开发一个web项目,总会使用到各种缓存技术,在Zend Framework 2 项目中,就提供了各种缓存服务,如Apc,Filesystem,Memcached等等,这里将介绍使用memcached 的一种简单配置。

配置memcached 时,要确保你的运行环境中是否安装了memcached,如果没有安装则请安装。

本人是在Mac OS X 上,使用ZendServer 作为集成环境,已经安装了memcache 和 memcached。

再者,就是安装成功后,必须开启memcached。本人在测试就因为没有开启memcached ,而输出不了数据。

在Mac OS X 上,使用Terminal(终端),开发memcached 的命令是:

memcached -u memcached -d -m 30 -l 127.0.0.1 -p 11211



以上准备都完成后,开发配置缓存服务。

我们使用‘cache’配置缓存服务。

1.注册服务到service manager
//config/autoload/global.php
'service_manager' => array(
     'abstract_factories' => array(
            'Zend\Cache\Service\StorageCacheAbstractServiceFactory',
      )
),



2.配置缓存的一些选项。

//config/autoload/global.php
'caches' => array(
        'memcached' => array( // //can be called directly via SM in the name of 'memcached'
            'adapter' => array(
                'name' => 'memcached',
                'lifetime' => 7200,
                'options' => array(
                    'servers' => array(
                        array(
                            '127.0.0.1',//服务器域名或ip
                            11211       //服务器tcp端口号,默认值是11211
                        )
                    ),
                    'namespace' => 'MYMEMCACHEDNAMESPACE',
                    'liboptions' => array(
                        'COMPRESSION' => true,
                        'binary_protocol' => true,
                        'no_block' => true,
                        'connect_timeout' => 100
                    )
                )
            ),
            'plugins' => array(
                'exception_handler' => array(
                    'throw_exceptions' => false
                )
            )
        )
    )



配置已经完成了,接下来就是调用该服务
$this->getServiceLocator()->get('memcached');



我们可以在你的controller 中测试一下。
//filling cache value
public function indexAction()
{
      $this->getServiceLocator()->get('memcached')->setItem('foo', 'bar');
}
//retrieve cache value
public function retrieveAction()
{
    echo $this->getServiceLocator()->get('memcached')->getItem('foo');
}

完成。


参考地址(此地址需要翻墙):http://samsonasik.wordpress.com/2013/10/06/zend-framework-2-using-caches-configuration-to-setting-up-cache-services/



© 著作权归作者所有

共有 人打赏支持
phpy
粉丝 6
博文 14
码字总数 2054
作品 0
广州
高级程序员
如何实现PHP片段缓存?

最近开发学校的一个传媒网站,是用删改过的Zend Framework提供控制器,自己写的模型层基类,Blitz Template作为视图层。因为数据库用的是PostgreSQL,并发承受非常弱,于是采取了大量缓存策略...

ValueError
2010/12/02
2.1K
12
几款主流PHP框架的优缺点评比

PHP语言还是比较常用到的一门计算机高级语言。我们将会在这篇文章中向大家主要介绍关于PHP框架相关优缺点评比,作为一个参考分享给朋友们。 主要参考的PHP框架包括:CodeIgniter、CakePHP、Z...

绿悠悠
2010/06/08
24.8K
20
PHP与MongoDB:类库、框架与工具介绍

本文来自MongoDB官方,文中把PHP与MongoDB相关的类库、框架、工具做了汇总和介绍,如果你正使用PHP并在关注MongoDB,那么这篇文章可能对你有用。 架构相关 CakePHP CakePHP是一个非常受欢迎的...

kisshua
2012/08/31
0
0
PHP沉思录-第四篇-Zend Framework-左轻侯-《程序员》2007年12月号

本文发表于《程序员》杂志2007年第12期,略有删节。      PHP沉思录之四:Zend Framework   左轻侯   2007.11.11       从理论上来说,PHP是一种通用的动态语言,它可以替代Per...

一配
2015/10/16
18
0
WordPress缓存优化,就是快

现在装了Zend Opcache之后,博客访问速度又加快了不少。现在维持在15 queries in 0.179 seconds左右。说说我目前达到快速的一些WordPress缓存优化。 1、主题 首先写主题的时候必须是精简,一...

加咧个油
2013/06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

深入解析MySQL视图VIEW

Q:什么是视图?视图是干什么用的? A:视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。作为一个select语句保存在数据字典中的。   通过视图,可以展现基表的部分数据;...

IT--小哥
45分钟前
2
0
虚拟机学习之二:垃圾收集器和内存分配策略

1.对象是否可回收 1.1引用计数算法 引用计数算法:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时候计数器值为0的对象就是不可能...

贾峰uk
55分钟前
2
0
smart-doc功能使用介绍

smart-doc从8月份底开始开源发布到目前为止已经迭代了几个版本。在这里非常感谢那些敢于用smart-doc去做尝试并积极提出建议的社区用户。因此决定在本博客中重要说明下smart-doc的功能,包括使...

上官胡闹
昨天
9
0
JavaEE——Junit

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。 Junit Junit又名单元测试,Junit是用来测试Jav...

凯哥学堂
昨天
6
0
读《美丽新世界》

一、背景 十一国庆节从重庆回深圳的时候,做得绿皮车,路上看了两本书:李笑来的《韭菜的自我修养》和禁书《美丽新世界》。 上篇文章已经分享了 读《韭菜的自我修养》,这篇文章来记录一下《...

tiankonguse
昨天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部