【问题标题】:Database vs JavaScript string concatenation数据库与 JavaScript 字符串连接
【发布时间】:2016-08-04 15:55:37
【问题描述】:

我对 Angular UI 框架还是比较陌生,我需要通过 API 调用和 JSON 有效负载从数据库中获取用户数据,包括 user_iduser_firstnameuser_lastname

这个 JSON 有效负载可能已经有 20 列,并且可能有大约 1k 行。添加这 3 个(id、firstname、lastname)可能不会对性能产生影响。要求是显示包括用户数据在内的数据列表,其中用户以“firstname lastname”作为连接字符串呈现,并且在UI端会对用户进行一些过滤,因此有ID。

我的问题是,这个连接逻辑是否属于 DB 层,而不是 3 列,我返回 2 如下:

USER.USER_ID, USER.FIRST_NAME||' '||USER.LAST_NAME AS USER_NAME

或者在我解析模型的前端:

myModel = {
....
user_id: data.user_id,
user_name: data.user_firstname + ' ' + data.user_lastname,
}

哪种方法更有意义?我认为数据库不应该有这个业务逻辑,所以我很喜欢在前端做,但我不确定。

【问题讨论】:

  • 我尝试在服务器上施加尽可能多的负载,以便客户端可以不加思索地输出数据。然后只需使用 user_name_string 作为服务器中的变量供您的应用使用。

标签: javascript sql angularjs json oracle


【解决方案1】:

服务器层具有比客户端更好地处理负载的“马力”。 如果性能是您的主要关注点,请尽可能将您的逻辑放在服务器层。

【讨论】:

    【解决方案2】:

    在数据库级别,性能总是优于前端,因为在前端,不同的配置(RAM、处理器速度)不同的性能。但是服务器端有性能改进的配置。 另外对于api的数据优化,需要在服务器端开启gzip压缩。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-04
      • 2019-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多