文档章节

小蚂蚁学习APP接口开发(8)—— APP接口实例——服务器定时缓存的方式开发接口

嗜学如命的小蚂蚁
 嗜学如命的小蚂蚁
发布于 2015/10/20 10:50
字数 476
阅读 241
收藏 5

基本的思路:服务器只负责定时更新缓存。请求进来只需要读取缓存就可以了。

服务器定时执行生成缓存的代码:

<?php 
/********************************
*
*   crontab 定时生成缓存文件
*	* * * * * /usr/bin/php /app/crontab.php	
*   学php的小蚂蚁
*   原创博客 http://my.oschina.net/woshixiaomayi/blog
*
***************************/

//载入前天写的db类
//代码内容请参考 http://my.oschina.net/woshixiaomayi/blog/518295
require_once('./db.php');

//载入之前写好的文件静态缓存类
//代码内容请参考 http://my.oschina.net/woshixiaomayi/blog/518885
require_once('./file.php');

try{
	$connect =	Db::getInstance()->connect();
}catch(Exception $e){
	/*
		因为这里是让crontab定时执行的,错误只能写到错误日志之中,
		这一点一定要注意一下。
	*/	
	file_put_contents('./log/'.date('Y-m-d').'.txt', $e->getMessage());
	return;
}
//操作数据库
$sql="select * from ecm_member limit 3";
$result	=	mysql_query($sql,$connect);
$index_data=array();
while ($row	=	mysql_fetch_assoc($result)) {
	$index_data[]	=	$row;
}
//实例化静态文件缓存类,得到数据就缓存,没有则写入日志
$file =	new file();
if($index_data){
	$file->cacheData('index_page',$index_data);
}else{
	file_put_contents('./log/'.date('Y-m-d').'.txt', '没有获取数据');
}

 ?>

请求进来,直接将crontab生成的缓存发送给用户即可:

<?php 
/************************************
*
*	调用crontab定时生成的缓存数据
*	学php的小蚂蚁	
*	博客 http://my.oschina.net/woshixiaomayi/blog
*
******************************/

//载入之前写好的接口响应类
//代码内容请参考 http://my.oschina.net/woshixiaomayi/blog/517384	
require_once('./response.php');
//载入之前写好的接口响应类
//代码内容请参考 http://my.oschina.net/woshixiaomayi/blog/518885
require_once('./file.php');

//有访问进来,读取缓存,crontab会定时更新缓存,所以直接使用就行了
$file = new File();
$data 	=	$file -> cacheData('index_page');

if($data){
	return Response::show(200,'数据返回成功',$data);
}else{
	return Response::show(400,'数据返回失败');
}
?>

    这个思路上也比较简单,APP接口实例到这里接学习结束了。    b( ̄▽ ̄)d    加油!

© 著作权归作者所有

共有 人打赏支持
嗜学如命的小蚂蚁
粉丝 137
博文 161
码字总数 100864
作品 0
郑州
程序员
小蚂蚁学习APP接口开发(6)—— APP接口实例——首页数据接口的案例实现

读取数据的三种方式 读取数据库方式开发首页接口 从数据库获取数据——》封装——》生成接口数 优点:数据时效性比较高的系统 2. 读取缓存方式开发首页接口(用途非常广) 从数据库获取信息—...

嗜学如命的小蚂蚁
2015/10/18
805
0
用PHP写APP接口,现在我也在学习中。。。

现在app这么火,作为一个phper,应该知道如何写app的接口,下面做一个讲解。Index: 第1章 APP接口简介 - 第2章 封装通信接口方法 2-1 JSON方式封装通信接口 (14:39) 2-2 PHP生成XML数据 (12:...

YSail
07/05
0
0
小蚂蚁学习APP接口开发(1)—— json方式封装通信接口

前段时间,和公司的一个安卓程序员配合开发一款简单的APP,因为第一次写,时间也紧张,总感觉写的不是那么的完美,趁着这段时间好好总结一下经验。 对于APP的请求,服务器返回的数据类型一般...

嗜学如命的小蚂蚁
2015/10/13
985
0
小蚂蚁学习APP接口开发(9)—— APP版本升级的接口实例

今天的笔记主要来记录最后两个知识要点之一,APP客户端版本升级的接口开发。 APP的开发主要由伟大而神圣的用户来更新,更新的流程应该是这样的: 开启APP——请求初始化接口init.php——检测...

嗜学如命的小蚂蚁
2015/10/21
2.5K
1
免费人脸识别API接口如何接入使用

EyeKey为开发者提供非常强大的人脸识别接口服务,包括人脸检测、人脸关键点检测、性别年龄检测、1:1人脸比对、1:N相似脸搜索等丰富的开发接口供各位攻城狮调用。并且,免费。下面就详细介绍...

EyeKey云服务
2015/05/20
23
0

没有更多内容

加载失败,请刷新页面

加载更多

df和du命令 磁盘分区

9月25日任务 4.1 df命令 4.2 du命令 4.3/4.4 磁盘分区 df 命令 查看系统磁盘空间使用情况 常用参数 -h (human-readble) # 人性化的为空间大小转换单位显示[root@centos7 ~]# df -h文件系...

robertt15
16分钟前
0
0
【a&sAI创新】华为CloudIVS轻量云:借力打力,四两拨千斤

[摘要] 1、测评表现就目前来说,AI的门槛还是比较高的,业内所熟知的算法企业,为了追求算法的极致,比如人脸识别公司,仍在不断扩大研发...   1、测评表现   就目前来说,AI的门槛还是比...

yizhichao
33分钟前
1
0
安卓安装APK报错error: INSTALL_FAILED_UPDATE_INCOMPATIBLE

记录一个 DELETE_FAILED_INTERNAL_ERROR Error while Installing APK问题 之前遇到这个问题 方案1 将data/data/目录下该应用的包名的目录删除掉,如:adb shell rm -rf data/data/com.demo.h...

切切歆语
33分钟前
0
0
用网关zuul时,熔断hytrix里面的坑

1,zuul 默认的隔离级别是信号量,默认最大隔离信号量是100 信号量隔离和线程池隔离的区别如下: https://my.oschina.net/u/867417/blog/2120713 默认设置: 2,zuul里隔离是按服务隔离的,也...

爱吃大肉包
34分钟前
0
0
使用SSM+Solr优雅的实现电商项目中的搜索功能

在学习了Redis&Spring-Data-Redis入门和Solr&Spring-Data-Solr入门后,接下来就该是项目实战了。这次我们用Vue.JS和ElementUI写前端页面,优雅的整合SSM-Shiro-Redis-Solr框架。 手摸手教你优...

TyCoding
34分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部