接口访问日志 数据结构 分享
apiname 接口名称
apiname[cnt]接口访问次数每访问一次增加一次 这里要处理并发问题 我还没有解决;
apiname[cnt][n][spent_time] 代表第几次访问 消耗的时长
apinames 这是一个数组 记录所有的的apiname 我用的serialize把数组变成字符串
接下来做一个做一个存储的展示
apinames = unserialize($apinames);
$arr = array();
foreach($apinames as $k=>$v){
$key=$v;
$arr[$key]=$memcache->get($v.'[cnt]');
}
if($apiname){
$cnt = $memcache->get($apiname.'[cnt]');
$r = array();
for($i=1;$i<=$cnt;$i++){
$r[$i]['apiname']=$apiname;
$r[$i]['id']=$i;
$spent_key = $apiname.'[cnt]'."[".$i."]"."[spent_time]";
$add_key = $apiname.'[cnt]'."[".$i."]"."[add_time]";
$r[$i]['spent_time']=$memcache->get($spent_key);
$r[$i]['addtime']= date('Y-m-d H:i:s', $memcache->get($add_key));
}
仅供参考
接下来是session存储到memcache 我们用的是阿里云的memcache服务 php是安装的扩展是memcached
这块遇到了点问题 研究了两天终于研究通 一开始是修改php.ini 没有效果 后来发现配置文件有一个优先级 php-fpm.d 下面还有一个配置文件 或者是php-fpm.conf 这两个配置文件的优先级都大于php.ini 所以要先配置后者在重启nginx 和php-fpm
这块解决后又遇到问题 是memcache 存不上 后来发现 是memcached扩展的原因 如果本地安装的是memcahched 在修改session存储路径时要在hander那里写memcached 切记不要写memcahe 在就是路径 路径不要加tcp 直接写服务地址 和端口号就好
Atas ialah kandungan terperinci 关于对接memcache的实例教程. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!