>백엔드 개발 >PHP 문제 >PHP에서 캐시를 설정하는 방법

PHP에서 캐시를 설정하는 방법

coldplay.xixi
coldplay.xixi원래의
2020-11-04 14:16:554447검색

设置php缓存的方法:1、使用Memcached高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载;2、使用Redis实现缓存;3、使用APC开放自由的PHP opcode缓存。

PHP에서 캐시를 설정하는 방법

设置php缓存的方法:

缓存技术可减轻服务器负载、降低网络拥塞、增强WWW可扩展性,其基本思想是利用客户访问的时间局部性,将客户访问过的内容在Cache中存放一个副本,当该内容下次被访问时,不必连接到驻留网站,而是由Cache中保留的副本提供。缓存是一个很重要的技术,下面是自己使用的几个缓存技术,记录一下。

1、文件缓存

2、Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信,php有memcached扩展,安装好了即可使用。

// 初始化
$cache = new Memcache();
$cache->pconnect(CACHE_HOSTNAME, CACHE_PORT);
// 写入
$cache->set(CACHE_PREFIX . $key, $value, MEMCACHE_COMPRESSED, $expire);(CACHE_PREFIX 为了避免命名冲突,最好加一个前缀,MEMCACHE_COMPRESSED一个标记,设置为0表示不压缩)
// 读取
$cache->get(CACHE_PREFIX . $key);
// 删除
$cache->delete(CACHE_PREFIX . $key);

3、Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。类似的安装好php扩展// 初始化$cache = new Redis();

// 初始化$cache = new \\Redis();
$cache->connect(CACHE_HOSTNAME, CACHE_PORT);
// 先检查是否存在,然后写入并设置有效时间
if($cache->exists($key)){  
    $cache->delete(CACHE_PREFIX . $key);
}
$cache->set(CACHE_PREFIX . $key, serialize($value));
$cache->expire(CACHE_PREFIX . $key, $expire);
// 读取
$cache->get(CACHE_PREFIX . $key);

4、APC 

Alternative PHP Cache (APC) 是一个开放自由的PHP opcode 缓存。它的目标是提供一个自由、 开放,和健全的框架用于缓存和优化PHP的中间代码。

这个试了半天没成功,windows一开启就报错,记下以后再试。

php内置的,无需类似上面两种去连接初始化什么的。

// 写入
apc_store(CACHE_PREFIX . $key, $value, $expire);
// 读取
apc_fetch(CACHE_PREFIX . $key);
// 删除
apc_delete(CACHE_PREFIX . $key);

 相对第四个貌似是最简单的,但是好像配置不好配,网上找了半天没找到解决方案。

相关免费学习推荐:php编程(视频)

위 내용은 PHP에서 캐시를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.