关于PHP缓存库phpFastCache的使用

WBOY
Freigeben: 2016-08-08 09:33:13
Original
1209 Leute haben es durchsucht

phpfastcache是一种高性能,分布式对象缓存系统,通用性,可用于加快动态Web应用程序,减轻数据库负载。
phpfastcache把数据库负载到几乎为零,得到更快的页面加载时间的用户,更好的资源利用率。它是简单而强大的。

减少数据库查询

<span>php </span><span>//</span><span> In your config file</span> <span>include</span>("phpfastcache/phpfastcache.php"<span>);
    phpFastCache</span>::setup("storage","auto"<span>); </span><span>//</span><span> phpFastCache support "apc", "memcache", "memcached", "wincache" ,"files", "sqlite" and "xcache"
    // You don't need to change your code when you change your caching system. Or simple keep it auto</span> <span>$cache</span> =<span> phpFastCache(); </span><span>//</span><span> In your Class, Functions, PHP Pages
    // try to get from Cache first. product_page = YOUR Identity Keyword</span> <span>$products</span> = <span>$cache</span>->get("product_page"<span>); </span><span>if</span>(<span>$products</span> == <span>null</span><span>) { </span><span>$products</span> = YOUR DB QUERIES ||<span> GET_PRODUCTS_FUNCTION; </span><span>//</span><span> set products in to cache in 600 seconds = 10 minutes</span> <span>$cache</span>->set("product_page", <span>$products</span>,600<span>);
    } </span><span>//</span><span> Output Your Contents $products HERE</span>
Nach dem Login kopieren

 

提高cURL和API调用性能

<span>php </span><span>include</span>("phpfastcache/phpfastcache.php"<span>); </span><span>$cache</span> = phpFastCache("memcached"<span>); </span><span>//</span><span> try to get from Cache first.</span> <span>$results</span> = <span>$cache</span>->get("identity_keyword"<span>) </span><span>if</span>(<span>$results</span> == <span>null</span><span>) { </span><span>$results</span> = cURL->get("http://www.youtube.com/api/json/url/keyword/page"<span>); </span><span>//</span><span> Write to Cache Save API Calls next time</span> <span>$cache</span>->set("identity_keyword", <span>$results</span>, 3600*24<span>);
    } </span><span>foreach</span>(<span>$results</span> <span>as</span> <span>$video</span><span>) { </span><span>//</span><span> Output Your Contents HERE</span> }
Nach dem Login kopieren


全页缓存

<span>php </span><span>//</span><span> use Files Cache for Whole Page / Widget

    // keyword = Webpage_URL</span> <span>$keyword_webpage</span> = <span>md5</span>(<span>$_SERVER</span>['HTTP_HOST'].<span>$_SERVER</span>['REQUEST_URI'].<span>$_SERVER</span>['QUERY_STRING'<span>]); </span><span>$html</span> = __c("files")->get(<span>$keyword_webpage</span><span>); </span><span>if</span>(<span>$html</span> == <span>null</span><span>) { </span><span>ob_start</span><span>(); </span><span>/*</span><span> ALL OF YOUR CODE GO HERE
            RENDER YOUR PAGE, DB QUERY, WHATEVER </span><span>*/</span> <span>//</span><span> GET HTML WEBPAGE</span> <span>$html</span> = <span>ob_get_contents</span><span>(); </span><span>//</span><span> Save to Cache 30 minutes</span> __c("files")->set(<span>$keyword_webpage</span>,<span>$html</span>, 1800<span>);
    } </span><span>echo</span> <span>$html</span>;
Nach dem Login kopieren


挂件缓存

<span>php </span><span>//</span><span> use Files Cache for Whole Page / Widget</span> <span>$cache</span> = phpFastCache("files"<span>); </span><span>$html</span> = <span>$cache</span>-><span>widget_1; </span><span>if</span>(<span>$html</span> == <span>null</span><span>) { </span><span>$html</span> = Render Your Page || Widget || "Hello World"<span>; </span><span>//</span><span> Save to Cache 30 minutes</span> <span>$cache</span>->widget_1 = <span>array</span>(<span>$html</span>, 1800<span>);
    } </span><span>echo</span> or <span>return</span> your <span>$html</span>;
Nach dem Login kopieren


同时使用多种缓存

<span>php </span><span>//</span><span> in your config files</span> <span>include</span>("phpfastcache/phpfastcache.php"<span>); </span><span>//</span><span> auto | memcache | files ...etc. Will be default for $cache = __c();</span> phpFastCache::<span>$storage</span> = "auto"<span>; </span><span>$cache1</span> =<span> phpFastCache(); </span><span>$cache2</span> = __c("memcache"<span>); </span><span>$server</span> = <span>array</span>(<span>array</span>("127.0.0.1",11211,100), <span>array</span>("128.5.1.3",11215,80<span>)); </span><span>$cache2</span>->option("server", <span>$server</span><span>); </span><span>$cache3</span> = <span>new</span> phpFastCache("apc"<span>); </span><span>//</span><span> How to Write?</span> <span>$cache1</span>->set("keyword1", "string|number|array|object", 300<span>); </span><span>$cache2</span>->keyword2 = <span>array</span>("something here", 600<span>);
    __c()</span>->keyword3 = <span>array</span>("array|object", 3600*24<span>); </span><span>//</span><span> How to Read?</span> <span>$data</span> = <span>$cache1</span>->get("keyword1"<span>); </span><span>$data</span> = <span>$cache2</span>-><span>keyword2; </span><span>$data</span> = __c()-><span>keyword3; </span><span>$data</span> = __c()->get("keyword4"<span>); </span><span>//</span><span> Free to Travel between any caching methods</span> <span>$cache1</span> = phpFastCache("files"<span>); </span><span>$cache1</span>->set("keyword1", <span>$value</span>, <span>$time</span><span>); </span><span>$cache1</span>->memcache->set("keyword1", <span>$value</span>, <span>$time</span><span>); </span><span>$cache1</span>->apc->set("whatever", <span>$value</span>, 300<span>); </span><span>$cache2</span> = __c("apc"<span>); </span><span>$cache2</span>->keyword1 = <span>array</span>("so cool", 300<span>); </span><span>$cache2</span>->files->keyword1 = <span>array</span>("Oh yeah!", 600<span>); </span><span>$data</span> = __c("memcache")->get("keyword1"<span>); </span><span>$data</span> = __c("files")->get("keyword2"<span>); </span><span>$data</span> = __c()-><span>keyword3; </span><span>//</span><span> Multiple ? No Problem</span> <span>$list</span> = <span>$cache1</span>->getMulti(<span>array</span>("key1","key2","key3"<span>)); </span><span>$cache2</span>->setMulti(<span>array</span>("key1","value1", 300), <span>array</span>("key2","value2", 600), <span>array</span>("key3","value3", 1800),<span> ); </span><span>$list</span> = <span>$cache1</span>->apc->getMulti(<span>array</span>("key1","key2","key3"<span>));
    __c()</span>->memcache->getMulti(<span>array</span>("a","b","c"<span>)); </span><span>//</span><span> want more? Check out document in source code</span>
Nach dem Login kopieren

 

以上demo来自官网示例。


官网地址:http://www.phpfastcache.com/

 

以上就介绍了关于PHP缓存库phpFastCache的使用,包括了phpFastCache方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!