大数据量请求的 api 接口如何设计

2018 年 5 月 31 日
 banksiae
上次有个同事问了个问题,说有个接口,report 请求和返回的数据量都比较大,底层的数据量也比较大,然后反应就慢,说有没有什么方案。
想了一下,除了队列,异步,接口轻量化拆分,然后没想什么好的办法。
可以同事说,不能拆接口,数据要保持原样,这个想了好久没想出什么方案来,响应还要快,V 友们有什么方法没
8432 次点击
所在节点    程序员
23 条回复
wshcdr
2018 年 5 月 31 日
接口慢,用缓存啊。
hooopo
2018 年 5 月 31 日
这是一个需求问题,不是技术问题
Braid
2018 年 5 月 31 日
能 orm 解决的尽量不要 api
F281M6Dh8DXpD1g2
2018 年 5 月 31 日
为啥大数据量要通过 api 返回?
Light3
2018 年 5 月 31 日
缓存???不知道你说的数据量大概多少?
banksiae
2018 年 5 月 31 日
意思是保持数据一致性的同时,提高性能。但是后端数据处理慢的话,同步怎么会快呢
shalk
2018 年 5 月 31 日
听上去怎么像脑筋急转弯,一趟怎么快速运一堆货物. 没想到办法.
提高网速和运算速度?我也不知道.
mark
spice630
2018 年 5 月 31 日
分块,云存储的上传和下载接口都是这样设计的.
链接里的代码是 ucloud ufile 的上传接口
https://github.com/songtianyi/rrframework/blob/master/storage/ufile.go#L198
bk201
2018 年 5 月 31 日
大数据量除了分拆还是什么办法?压缩?
luoway
2018 年 5 月 31 日
Stream
提前处理接收到的部分数据
liuxu
2018 年 5 月 31 日
除了楼上们说的,如果可能的话,可以拆分后台服务,将串行步骤转为并行执行组合后返回
LukeChien
2018 年 5 月 31 日
加机器
night98
2018 年 5 月 31 日
接口提前缓存好,每次请求直接拿缓存,除非你数据量上 G 级别,否则一般还是很快的。
qloog
2018 年 5 月 31 日
一个接口不要吐出所有的东西,按功能拆分,这样就不会有数量的接口了。
opengps
2018 年 5 月 31 日
软件都约束了不能动多少,就从硬件下手吧
woscaizi
2018 年 5 月 31 日
数据量在多少呢?
速度慢是在哪个环节呢?
如果后端不拖速度,瓶颈就在网络传输了吧。
jssyxzy
2018 年 6 月 1 日
加 cache 啊
ebingtel
2018 年 6 月 1 日
应该从同步调用,改为异步轮询吧……
annielong
2018 年 6 月 1 日
如果是多条数据的话,不行就强行分页,再大数据 api 一次只生成 20 条传回来,哈哈
willvvvvv1
2018 年 6 月 1 日
数据量大,多大?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/459250

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX