phalcon: 缓存片段,文件缓存,memcache缓存

几种缓存,需要用到前端配置,加后端实例配合着用

片段缓存:

public function indexAction()
    {
        //渲染页面
        $this->view->setTemplateAfter(‘common‘);

        //缓存片段        //前端配置
        $frontcache = new \Phalcon\Cache\Frontend\Output(array(
            "lifetime" => 86400
        ));      //后端处理
        $cache = new \Phalcon\Cache\Backend\File($frontcache, array(
            "cacheDir" => "../app/cache/"
        ));
        //查询片段是否存在
        $content = $cache->start("index.pthm");
        if ($content == null) {

            echo date("r");
            $this->view->pick("index/index");

            //缓存片段
            $cache->save();

        } else {
            echo $content;
        }

    }

  

文件缓存:

public function lastAction()
    {
        //数据缓存
        //前端配置
        $frontcache = new \Phalcon\Cache\Frontend\Data(array(
            "lifetime"=>86400
        ));
        //后端实例
        $cache = new \Phalcon\Cache\Backend\File($frontcache, array(
            ‘cacheDir‘=>‘../app/cache/‘
        ));
        $cacheKey = ‘customer_10‘;
        $customer = $cache->get($cacheKey);
        //在3600有效期内读取缓存
       // $customer = $cache->get($cacheKey, 3600);
        if($customer == null)
        {
            $customer = \SysCustomer::find(array(
                "limit"=>10
            ))->toArray();
            //保存缓存
            $cache->save($cacheKey, $customer);
            //单独设置缓存的有效期
            // $cache->save($cacheKey, $customer,3600);
        }
        var_dump($customer);
    }

  

memcache缓存,本例是windows下:

public function memcacheAction()
    {
        //memcache缓存
        //前端配置有效期
        $frontcache = new \Phalcon\Cache\Frontend\Data(array(
            "lifetime"=>86400
        ));
        //后端实例化
        $memcache =  new \Phalcon\Cache\Backend\Memcache($frontcache, array(
            "servers" => array(
                array(
                    "host" => "127.0.0.1",
                    "port" => "11211",
                    "weight" => "1"
                )
            )
        ));

       $mydata = $memcache->get(‘my-data‘);
        if($mydata == null) {
            $mydata = array(1,2,3,4,5);
            //保存缓存
            $memcache->save(‘my-data‘, $mydata);
            echo "--";
        }
        var_dump($mydata);

    }

  

时间: 2024-10-16 21:30:58

phalcon: 缓存片段,文件缓存,memcache缓存的相关文章

浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)

系统默认的缓存方式是采用File方式缓存,我们可以在项目配置文件里面定义其他的缓存方式,例如,修改默认的缓存方式为Xcache(当然,你的环境需要支持Xcache) 对于File方式缓存下的缓存目录下面因为缓存数据过多而导致存在大量的文件问题,ThinkPHP也给出了解决方案,可以启用哈希子目录缓存的方式. 'DATA_CACHE_SUBDIR'=>true 还可以设置哈希目录的层次,例如 'DATA_PATH_LEVEL'=>2 就可以根据缓存标识的哈希自动创建多层子目录来缓存. S方法支持

(转)memcache缓存

转自:http://369369.blog.51cto.com/319630/833234/ memcache分布式缓存 Memcache知识点梳理 Memcached概念:    Memcached是一个免费开源的,高性能的,具有分布式对象的缓存系统,它可以用来保存一些经常存取的对象或数据,保存的数据像一张巨大的HASH表,该表以Key-value对的方式存在内存中.官网下载地址: http://www.memcached.org/运行环境: linux,BSD,windows都可跑协议理论:

Memcache缓存服务器(Nginx+php+Memcache+MySQL)

一.MemCache简介: MemCache是一个自由.源码开放.高性能.分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度.MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串.对象等)所使用的key-value存储,数据可以来自数据库调用.API调用,或者页面渲染的结果.MemCache设计理念就是小而强大,它简单的设计促进了快速部署.易于开发并解决面对大规模的数据缓

windows下ThinkPHP3.2.3使用memcache缓存

准备 要使用memcache,首先要安装配置好memcache服务memcached: 下载http://downloads.northscale.com/memcached-win64-1.4.4-14.zip,解压后点击exe文件即可启动服务: 然后下载php的对应版本memcache扩展文件 http://windows.php.net/downloads/pecl/releases/memcache/ php_memcache.dll 到php安装目录下扩展目录 php\ext: 最后,

Linux之搭建memcache缓存服务器(二)

Linux之搭建memcache缓存服务器(nginx+php+memcache+mysql) 二.centos7.2+nginx+php+memcache+mysql 环境描述: OS: [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) nginx和php: nginx-1.10.2.tar.gz php-5.6.27.tar.gz ip地址:192.168.31.141/24

01-08-05【Nhibernate (版本3.3.1.4000) 出入江湖】NHibernate二级缓存:第三方MemCache缓存

一.准备工作 [1]根据操作系统(位数)选择下载相应版本的MemCache, MemCache的下载和安装,参看: http://www.cnblogs.com/easy5weikai/p/3760677.html [2]第三方MemCache缓存适配器,下载地址: http://sourceforge.net/projects/nhcontrib/files/ 特别说明: 1.一定要版本一致 MemCache缓存适配器写本文的时候最高版本是:NHCH-3.2.0.GA-bin(不支持高版本的N

memcached基于socket访问memcache缓存服务器

memcached基于socket访问memcache缓存服务器 操作memcache常用三种方法: 1.memcache基于php_memcache.dll扩展(php扩展) 2.memcached基于php_memcached.dll扩展(php扩展) 3.memcached基于socket访问(基于网络) memcached-client.php 调用很简单,调用方法如下: <?php header("content-type:text/html; charset=utf-8&quo

图文并茂超详细搭建memcache缓存服务器(nginx+php+memcache+mysql)

博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 一.MemCache简述 session MemCache是一个自由.源码开放.高性能.分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度. MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串.对象等)所使用的k

memcache缓存安装配置

memcache是高性能,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度.目前用memcache解决互联网上的大用户读取是非常流行的一种用法. 下载安装 前提要先安装libevent软件官方(http://monkey.org/~provos/libevent/) 其次安装memcache官方(http://memcached.org/) 1.yum -y install libevent,yum源不能用的下载tar包编译安装. 2.动态添加php扩展memcache.