文档章节

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

phpy
 phpy
发布于 2014/02/26 09:14
字数 445
阅读 903
收藏 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.2K
12
几款主流PHP框架的优缺点评比

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

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

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

kisshua
2012/08/31
0
0
WINDOWS + WAMP + Zend Framework 配置

WINDOWS 下WAMP环境下 的 Zend Framework 配置 1,安装WampServer 下载WAMPSERVER并安装,在本例中,安装在C:wamp下。 2 安装Zend Framework 解压缩 Zend Framework 压缩包中 library 至 C:...

尐桀
2011/06/05
0
0
PHP沉思录-第四篇-Zend Framework-左轻侯-《程序员》2007年12月号

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

一配
2015/10/16
18
0

没有更多内容

加载失败,请刷新页面

加载更多

websocket 接口简单测试工具,webcoket实用测试工具

chorme 插件 Simple WebSocket Client 对开发来说够用了,能连互联网,也能连本地的。

SimonAt
15分钟前
1
0
Ext中 get、getDom、getCmp的区别

getDom方法能够得到文档中的DOM节点,该方法中包含一个参数,该参数可以是DOM节点的id、DOM节点对象或DOM节点对应的Ext元素(Element)等。 (与getElementById是一个效果) •Ext.onReady(funct...

休辞醉倒
23分钟前
1
0
springboot jpa 访问数据库

spring boot(五):spring data jpa的使用 SpringBoot非官方教程 | 第三篇:SpringBoot用JdbcTemplates访问Mysql

颖辉小居
37分钟前
4
0
Quartz + Oracle 分布式Job实现

简述 实现 依赖包 <dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>2.2.3</version><exclusions><exclusion><groupId>com.zax......

呼呼南风
43分钟前
5
0
崛起于Springboot2.X之集成规则引擎Drools(41)

1、创建Springboot项目,勾选Web模块和lombok插件 2、添加pom其他依赖 <dependency> <groupId>org.kie</groupId> <artifactId>kie-spring</artifactId> <version>7.11.0.Fin......

木九天
51分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部