ajax 获取的数据列表的排序是后端还是前端来排更好?

2016-11-08 17:00:23 +08:00
 karasshell

从性能角度来看的话,是后端把已排好序的列表输出给前端好,还是由前端自己排序?

5915 次点击
所在节点    JavaScript
16 条回复
fortunezhang
2016-11-08 18:40:02 +08:00
个人观点:如果数据库能排序的话,就数据库排序。如果数据库不能排序的话,那就前端排序。
invoke
2016-11-08 18:41:17 +08:00
数据库能排的话直接 foreach 好一点吧
darrenfang
2016-11-08 18:44:58 +08:00
后端
learnshare
2016-11-08 18:48:08 +08:00
都好,哪个方便哪个来做
gouchaoer
2016-11-08 18:50:00 +08:00
当然是后端了,顺序包含了信息啊
tinyjiang
2016-11-08 19:40:25 +08:00
单纯你从排序的性能上看:如果不是特别大量的话,前端后端排序都影响不大可以。
但是:如果你采用了前端分页,数据量又不是特别小(几十几百条),恰巧你又要分页的话,就只能一次性把所有数据都捞出来排序了,性能方面:不管是对于前端还是后端这都是不能接受的!

请注意我上面两句话描述中的『不是特别大量』以及『数据量不是特别小』
codeyung
2016-11-08 20:12:31 +08:00
排序一般都是后端排
除非是那种拿过来需要前端搜索啊
一般数据不大
aldenchang
2016-11-08 20:24:02 +08:00
如果可以 在数据查询时排效率最高
KentY
2016-11-08 20:44:21 +08:00
我觉得这个要看具体情况. 如果是一个比较贵的查询, 而且查询结果又不是很多, 可以前端. 但是前提是, 在上一次查询结果中进行不同排序, 而不是在整个数据库基础上进行排序.

如果后端查询计算不是非常贵, 那还是后端吧, 毕竟保证了实时性和准确性.
Jakesoft
2016-11-08 21:58:21 +08:00
数据库不排序的话可能会同一 sql 得到的结果不一样。
aleen42
2016-11-08 22:14:09 +08:00
为了显示我大前端牛逼,当然是前端来
cxbig
2016-11-08 22:43:25 +08:00
测试,模拟主要访问者的硬件环境,在数据库、后端、前端做性能测试,看看那个效果最好用哪个。
gujinxin
2016-11-08 23:37:31 +08:00
分页智能后端排,不分页就前端排
PEP4JASON
2016-11-09 11:16:31 +08:00
那要看是 什么类型的列表了
lygmqkl
2016-11-09 22:53:21 +08:00
其实前端排序有云计算的感觉,但是关键是数据量 30w 条数据 一次读到前端排序试试,前后端都蛋疼。

归根到底扯到架构和设计上了,没有前期 well designed 后期肯定累死
jackie9692
2016-11-09 23:04:57 +08:00
有分页还是后端

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

https://www.v2ex.com/t/319034

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

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

© 2021 V2EX