文档章节

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

嗜学如命的小蚂蚁
 嗜学如命的小蚂蚁
发布于 2015/10/20 10:50
字数 476
阅读 243
收藏 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    加油!

© 著作权归作者所有

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

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

嗜学如命的小蚂蚁
2015/10/18
805
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
用PHP写APP接口,现在我也在学习中。。。

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

YSail
2018/07/05
0
0
项目设计方案概要

一、设计概述 1、系统模块 1.1、App 登录注册、密码修改、答题、科目、答疑、激活码、错题练习、订单、支付、收藏、评估、个人资料管理等模块。 1.2、接口 同App对应。 1.3、代理/分销 登陆、...

橙汁儿
2016/07/06
108
0

没有更多内容

加载失败,请刷新页面

加载更多

深入理解JVM—JVM内存模型

深入理解JVM—JVM内存模型 我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存...

onedotdot
30分钟前
1
0
MVC、MVCS、MVVM、MVP、VIPER等这么多架构模式哪一个好呢?

在项目开启阶段,其中一个很重要的环节就是选架构。 那么面对目前已知的这么多架构模式我们该怎么选择呢?这确实是个很让人头疼的问题! 下面我就在这里梳理一下目前常见的一些架构模式。 先...

Java干货分享
今天
4
0
简单模仿配置文件的反射机制

//Student类 public class Student { public void love() { System.out.println("python"); } } //Tesy类 public class Tesy { public static void main(String[] args) throws Exceptio......

南桥北木
今天
2
0
你真的需要了解一下CSS变量 var()的用法

当Web项目变得越来越大时,他的CSS会变得像天文数字那么大而且还变得混乱。为了帮助我们解决这个问题,新的CSS变量很快就会出现在主流浏览器中,它让开发人员能够重用并轻松编辑重复出现的C...

前端小攻略
今天
1
0
嵌入式应用选择合适的微控制器

为嵌入式应用选择微控制器有几个原因,即低成本,高集成度,增加可靠性,节省空间等。 准备所需硬件接口列表使用微控制器的基本硬件框图,准备一份微控制器需要支持的所有外设接口的列表。微...

linux-tao
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部