我在是否应该在前端或后端进行排序和过滤时遇到了概念冲突。
有人建议逻辑应该位于后端并且数据数量有限,即)如果您有数百万个数据集,则应一次向客户端提供 10-100 个结果,以减少页面加载时间。我感到困惑的是,如果有许多客户端同时排序和过滤(即 100 个用户)怎么办?如果是这种情况,那么您必须不断地对数百万条记录进行 100 次排序和过滤,我认为这会减慢速度服务器。
如果我假设我的数据集约为 10000 - 100000,并且有 10-50 个用户同时使用该应用程序,并且如果初始时间负载并不重要,因为它将是一个私有(private)企业应用程序(即)ERP,过滤和排序逻辑应该放在哪里?
最佳答案
您的问题没有一个正确的答案,以下是您的问题的优点和缺点。
服务器端排序:
对数据进行排序所产生的服务器开销。
由于您已经在发送经过过滤的数据,因此用户的数据传输量减少。
- 如果排序需要很长时间,用户体验可能会很差,用户会在空白屏幕上等待。
用户端排序:
服务器和用户的网络使用量增加,因此服务器进程运行时间较长。
可能会提供稍微更好的用户体验,它可能会增加页面加载时间的总体增长,但用户的屏幕上会显示一些数据。
最好是两全其美,而不是只坚持其中一个。
您可以在服务器级别使用缓存,这可能会提高应用程序的性能。
关于django - 我应该在哪里排序和过滤?后端还是前端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55547775/