随笔 - 934, 文章 - 0, 评论 - 247, 阅读 - 345万

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

防资损工作的特点

Posted on   蝈蝈俊  阅读(134)  评论(0编辑  收藏  举报

资损事故也可以算入广义的稳定性保障的一类,但是它也有自己的一些特点,

  • 感知难
    比如:商户配错价格、秒杀商品大量超卖、优惠券规则有漏洞、搜索推荐出错影响广告收入、会员未自动续期、积分算错、清结算少抽佣、黑产使用业务漏洞等,这些平台感知能力弱,技术指标不敏感,大部分是舆论爆发后人工反馈。
  • 修复慢
    修复慢是因为缺少可复用预案,只能临时Fix,时间上紧迫还容易引入新的风险。
  • 影响大
    涉及到钱,发现晚,修复慢,量就上去了,继而金额巨大。

所以更应该把精力投入到事前预防和尽早发现上,这样才能减少损失。

预防阶段,需要重点评估下面的风险,我们需要有风险地图,并做到防资损设计:

  • 幂等
  • 并发时数据正确性
  • 防数据篡改
  • 防金额计算错误
  • 检查默认值设置
  • 数据一致性
  • 兼容性问题
  • 防状态机错误
  • 环境隔离问题
  • 防返回码解析错误
  • 防变更配置错误导致资损的隐患?
  • ...

资损风险最终的都会反映到资金层面上,一般系统中资金的变化主要体现在:资金流、资金账户、资金计算和资金凭据,我们就需要做核验:

  • 资金流:通过梳理资金的流向,来确认资金转移的等式的正确性;
  • 资金账户:通过流水和记录核对资金账户数据的正确性;
  • 资金计算:通过数据对比进行正确性核算,比如:需要用BIGINT记录分金额,避免浮点存储计算不精确和DECIMAL精确计算代价高的问题;
  • 资金凭据:验证凭据的数据准确性以及彼此关联的数据正确性;

预案主要是止损的部分,需要具备资产冻结、资金拦截、场景降级或禁用这些预案,并做到定期演练。

总之,资金安全无小事,我们需要尊重墨菲定律,围绕可能发生的问题做足准备。

相关博文:
阅读排行:
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
历史上的今天:
2013-11-25 Golang 绘图基础 -绘制简单图形
2013-11-25 Golang 绘图基础- 不同的输出源
2012-11-25 Android大图片内存清理
2011-11-25 PHP 和 Android MD5 加密出来结果是一样的代码
2010-11-25 win7 下安装 Microsoft Web Application Stress Tool
点击右上角即可分享
微信分享提示