yii2缓存介质的介绍 [ 新手入门 ]
作者:鲁鲁槟 出处:http://www.luluqi.cn/post/default/show-post?id=23 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
缓存介绍 1、缓存:临时存储数据,将从数据库查询到的数据放在数据库、磁盘、内存中 2、读写速度:内存>磁盘>数据库
缓存介质 1、Apc缓存:单台服务器最快的数据缓存介质,将数据放在共享的内存块中
- 在单台Web服务器的内存中设置一定的内存大小,用于Apc控制下的共享内存块
- 服务器下有两个应用:www.luluyii.cn和mysql.luluyii.cn,它们共享着Apc内存块
- 注意:多个应该key冲突:比如有两个相同key,但是value不一样时,会冲突;
- 解决方法:为每个key添加项目名的前缀,比如www_a、mysql_a
2、MemCache:多台服务器最快的数据缓存介质,将数据分布式的存储在服务器内存中
- yii2配置MemCache:
'cache'=>['class'=>'yii\caching\MemCache','servers'=>['host'=>'127.0.0.1','port'=>'80','weight'=>100]],'keyPrefix'=>'www_']
- 解释:weight指权重,权重越大,该应用的内存越大;keyPrefix指存储数据的前缀,一般用项目名称作为前缀
- 案例:在前台某控制器中设置cache数据:
\yii::$app->cache->set('arr','a'=>'20');
在前后台均可以通过\yii::$app->cache->get('arr')
获取到名为arr的数据;
3、FileCache:文件缓存,主要存储一些大的string
- yii2文件缓存目录:runtime/cache
- 文件缓存作用域:单个web应用,比如yii2前后台的文件缓存相互独立
- yii2文件缓存配置:在应用主件中配置
'cache'=>['class'=>'yii\caching\FileCache']
4、ArrayCache:只对当前的请求有用
共 2 条回复
鲁鲁槟 东莞
注册时间:2015-12-02
最后登录:2024-08-09
在线时长:124小时36分
最后登录:2024-08-09
在线时长:124小时36分
- 粉丝110
- 金钱5620
- 威望140
- 积分8260