PHP中文件缓存转内存缓存的方法,微信小程序

前言
顾名思义文件缓存转内存缓存就是将存储在文件中的数据转到内存中去,实现磁盘操作转为内存操作,这样可以大大提高数据访问速度,并能实现缓存数据的分布式部署。文件缓存与内存缓存的介绍请参考名词解释部分。

微信小程序picker

一,函数原型
int memory_get_usage ([ bool $real_usage = false ] )

原理 文件缓存转内存缓存的原理就是把文件缓存中的数据转存到内存中,以实现数据全局共享,解决频繁加载文件和装载数据的问题,采用Memcache工具实现内存缓存数据。

相关文章:

二,版本兼容
PHP 4 >= 4.3.2, PHP 5

实现机制与步骤
1,检查文件是否存在内存缓存,如果不存在加载缓存文件
2,加载缓存文件,并获取缓存文件中的数据
3,将缓存文件中的数据写入内存
4,从内存中获取数据,并将数据注册为全局变量
5,返回数据

微信小程序 Button

三,基础用法与实例 1,获取当前的内存消耗量

这个过程中最主要处理两个问题,第一个问题是缓存文件加载,如果要实现文件缓存转内存缓存,就需要有一个统一的文件缓存路径调度服务,用于实现文件是否实现内存缓存机制。第二个问题是如何注册全局变量,不管是从文件中获取数据还是内存中获取,如果需要实现通用,就需要有一个注册全局变量的机制。

微信小程序 radio

复制代码 代码如下:

文件缓存路径调度服务这个问题实现比较简单,但成本比较高,因为需要重构现在的文件缓存加载路径方式。

微信小程序 slider

<?php
echo memory_get_usage();
$var = str_repeat(“liuhui”, 10000);
echo memory_get_usage();
unset($var);
echo memory_get_usage();
?>

普通的文件缓存加载方式
require ‘cache/config.php’;

微信小程序 switch

分别输出:62328 122504 62416
说明:memory_get_usage()函数输出的数值为bytes单位

文件缓存路径调度方式

微信小程序 textarea

2,格式化memory_get_usage()输出

require getCachePath(‘cache/config.php’);

微信小程序 picker-view

复制代码 代码如下:

上例中getCachePath()函数实现文件缓存路径调度服务。

微信小程序 picker

<?php
function convert($size){
$unit=array(‘b’,’kb’,’mb’,’gb’,’tb’,’pb’);
return @round($size/pow(1024,($i=floor(log($size,1024)))),2).’
‘.$unit[$i];
}
echo convert(memory_get_usage(true));
?>

发表评论

电子邮件地址不会被公开。 必填项已用*标注

标签:
网站地图xml地图