> 백엔드 개발 > PHP 튜토리얼 > API如何及时输出大量数据JSON数据

API如何及时输出大量数据JSON数据

WBOY
풀어 주다: 2016-06-06 20:20:23
원래의
1641명이 탐색했습니다.

在做一API,APP端想抽取简要数据进行缓存在手机端,所以设计了一个接口提供给APP调取,

经过测试,这个JSON格式的数据包在在2M左右(尽可能的精简并且做了序列化处理),导致response时间大概要10秒左右,这样很不理想,也尝试过分页获取,但是这样又增加了连接次数,也不是很理想,决定还是用一次获取完的方案,所以想请教一下如何优化一下输出的这个数据,例如标题里提到的及时输出,但是之前没有弄过我也不确定这样是否可以保证JSON数据的合法性和操作性。如果有其他方案也欢迎给出建议。

回复内容:

在做一API,APP端想抽取简要数据进行缓存在手机端,所以设计了一个接口提供给APP调取,

经过测试,这个JSON格式的数据包在在2M左右(尽可能的精简并且做了序列化处理),导致response时间大概要10秒左右,这样很不理想,也尝试过分页获取,但是这样又增加了连接次数,也不是很理想,决定还是用一次获取完的方案,所以想请教一下如何优化一下输出的这个数据,例如标题里提到的及时输出,但是之前没有弄过我也不确定这样是否可以保证JSON数据的合法性和操作性。如果有其他方案也欢迎给出建议。

用redis或者memcahce直接返回 试过了吗?

这种情况尝试一下gzip可能有意想不到的效果

如果是生成数据的效率问题,建议找缓存方案

既然使用到了APP,那么就利用APP端的计算能力
向服务器请求二进制数据返回,这个数据执行文本压缩-文本压缩很惊人的哦,特别是格式化的数据
本地拿到数据后解压缩还原成JSON格式的
json的字段名双方约定好,尽量短些~~~

后续请求获取增量的数据或变更过的数据即可

压缩,使用MD5保证文件完整性,业务允许的话请使用get请求.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿