后端处理一个较大的json文件返回数据给前端太慢该如何优化?

总共有1000条信息展示,我现在想到的是在前端使用轮询来解决,有没有更好的方案来解决网络慢数据大,我应该在后端怎么处理


回答:

试试分页。或者2次请求。第一次返回10-20条。不至于页面空白。然后再返回所有数据。


回答:

1000不会很多,是否开启了 gzip 等 压缩内容

  • nginx 配置

      gzip  on;

    gzip_min_length 1024;

    gzip_buffers 4 8k;

    gzip_types font/woff text/plain application/javascript application/x-javascript text/css application/xml application/json text/xml application/pdf ;


回答:

后端流式返回效果不错。就是浏览器请求一次,服务器多次返回,比如每次返回两个页面的内容,先让用户看着,后续慢慢加载完成。

比如用grpc


回答:

分页货或分次取


回答:

1)将内容分段后,然后多次给出。
2)类似分页的做法
3)需要辛苦一下前端的童鞋

get:/api/request
rquest:{..."next_page":1,...}

get:/api/request?next_page=1
rquest:{..."next_page":2,...}

get:/api/request?next_page=2
rquest:{..."next_page":null,...}

get:不再继续请求


回答:

后端做分页处理 或者 如果1000条信息 实时性不高就直接在后端做提前缓存,然后从缓存里取, 前端做懒加载 应该能符合你的业务需求,


回答:

可以采用对服务端数据进行分页


回答:

需要先定位为啥慢。慢在传输还是慢在查询?
从浏览器控制台或者通过Postman等可以看请求响应时间。如果慢在传输那可以尝试减小数据内容,比如不要传输前端不需要的字段,在查询数据库的时候就不要select那些不重要的字段。或者像其他回答一样,把请求分页,每页只显示10条。
如果是慢在查询,那就要优化查询语句了,通过sql分析看看具体是慢在什么过程上。
不过总体上分页查询肯定是个好方法。

以上是 后端处理一个较大的json文件返回数据给前端太慢该如何优化? 的全部内容, 来源链接: utcz.com/p/945403.html

回到顶部