哪个更适合做数据过滤:前端还是后端

Posted

技术标签:

【中文标题】哪个更适合做数据过滤:前端还是后端【英文标题】:Which is more appropriate to do data filter: front end or back end 【发布时间】:2012-10-23 04:13:34 【问题描述】:

对于初学者来说——我是编程的“菜鸟”,所以只需了解事物的工作原理并向社区寻求帮助。

但是……我想知道的是:

我有一个想要构建的 Web 应用程序,两个主要用户界面之一实际上是日历产品。每个日历项目都有 8 个与之关联的类别项目,每个类别有大约 5 个选项。我希望我的日历有一个强大的事件过滤系统,最好是用户与过滤器的交互不需要重新加载页面。

鉴于此信息,javascript 是否可以在前端进行过滤,与基于选择/取消选择的过滤器让服务器端交付/重新交付事件相比,这是最合适的过滤方式吗?例如,如果总共有 50 个事件(假设没有应用过滤器),我会让服务器端语言查询/加载所有 50 个,然后交给 JS,它会运行过滤逻辑和显示/不显示合适吗?

【问题讨论】:

过滤 50 个事件应该是微不足道的,因此将它们全部预加载并在客户端进行过滤是合理的。但是,一旦您处理了数千个事件,您会更喜欢服务器端过滤,因为它会向客户端推送更少的数据并更快地提供结果。 正如所说,这取决于数据量,就规则而言,我更喜欢在后端处理更大的数据量,而在前端处理更少的数据量。 它不仅取决于数据量,还取决于应用程序是否应该支持非JS浏览器,事件数据在哪里生成(由用户生成?)以及事件是否是用户特定的与否。 【参考方案1】:

你可以试试 cross-filter ,这是前端数据过滤的最佳工具。

您可以从以下链接阅读详细信息:

crossfilter in github

【讨论】:

以上是关于哪个更适合做数据过滤:前端还是后端的主要内容,如果未能解决你的问题,请参考以下文章

前端和python哪个工资高?

前端难还是后端难?

django是前端还是后端

哪个 MySQL 数据库引擎更适合存储会话和会话数据:MyISAM 还是 InnoDB?

前端用node做啥

Python / Django 应用程序:带有过滤菜单的酒单。过滤逻辑应该去哪里?前端还是后端?