xierfly 2016-10-11 09:03 采纳率: 0%
浏览 1508

关于前后台交互类型转换谁来处理的问题讨论

背景简述:
移动前端页面需要增加一个针对一个Int对应的文字枚举翻译;对于这个工作谁来做,接口提供人员(A)和前端开发人员(B)产生了意见分歧。

前端B:建议后台处理好返回给前端;原因是:① 这样不影响客户端使用的性能;②有其他开发后台处理过,前端不用过多的干涉;

(前端只做展现文字,请求接口依然是传递int类型字段)

后台接口A:建议前端处理,理由是:①可以减少DB的压力,毕竟DB属于稀缺资源;在高并发时可能体现更明显;②有Case WHEN上的标量计算损耗;③传递字段少了,也减少了网络传输的大小;

其实,在用户量少的情况下,都无所谓;
Q:也是想请教一下各位同道中人,在你们的日常工作中,一般怎么处理类似问题。

附加:
其实SQL很简单的,
SELECT ROW_NUMBER() OVER(ORDER BY pso.SettlementTime DESC) AS
RowNumber,
oi.ID AS Order_InfoID,
oi.UserName,
pso.AftertaxAmount,
pso.CommissionPayType,
CASE pso.CommissionPayType
WHEN 1 THEN '线索奖励'
WHEN 2 THEN '成交奖励'
ELSE '其他'
END AS CommissionPay,
pso.SettlementTime
FROM Pay_SettlementOrder AS pso WITH (NOLOCK)
INNER
JOIN Order_Info AS oi WITH (NOLOCK)
ON pso.PlatformOrderId = oi.ID
WHERE oi.IsDel = 0
AND oi.PlatformAgentID > 0
AND pso.PayState = 2;

  • 写回答

1条回答 默认 最新

  • little_how 2016-10-11 09:11
    关注

    1.字典缓存,把字典缓存到redis或其他缓存设备,在发送报文前做字典转换,字典是专门的一个表存储,所以不在查询的时候进行case when
    2.前端按照策略来加载服务端字典,然后在加载到信息的时候做前端转换,不建议这样
    3.涉及到中文字还原,也就是该字段有更新的话,就需要字段的追加,也就是需要两种值都传递到前段,那样前端做更改的时候只需要传递真实数据库值

    希望有帮助....

    评论

报告相同问题?

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题