美文网首页
提升问题解决能力思考(二)

提升问题解决能力思考(二)

作者: Real_man | 来源:发表于2019-02-14 10:46 被阅读28次

    之前想过一次相关东西,提升解决问题能力的思考,不过真正做事的时候,还是有问题。如果不出问题,人可能会无聊吧,出了问题,才有机会找到自己的盲区进行弥补。

    年前的时候有发现一个问题,当时想的推到年后再解决吧,果然年后问题又暴露了。

    问题

    支付宝在预授权冻结成功的时候会给我们发送通知,这个是官方消息比较可靠。但是失败的时候,我们无法立刻得知结果,而业务进行实际免押按钮要置灰的话,需要知道及时的结果。

    因此需要知道冻结失败,轮询支付宝不好,就采用接受mapi传过来的结果。

    问题是mapi传过来的结果不可信,另外在客户端预授权冻结失败的时候,支付宝app没有返回标志性信息,标志性信息需要客户端维护。最终导致mapi传给我们混乱数据,并且我们没有做有效验证。

    这个东西客户端是第一手数据源,客户端告诉我们数据是什么,然后来问我们数据是什么,我觉得这样多个步骤也容易出问题。

    思考

    1. 很多时候我们面临的情况是未知的,边走边想怎么处理的。但是团队协作的时候,最好养成大家一起讨论的习惯。

    支付宝app在预授权失败的时候没有返回有效的标志时,这个信息流到我这里就没有再往下走了,我就和mapi商量,让他直接传给我标记,当时想的是这种模糊的东西,离数据的源头越远越不好。讨论方案没问题,但是这种冻结失败没有有效数据的,貌似团队的人都不知道。

    一个人的力量是小的,团队的力量是大的,虽然东西不在我们这里解决,但是有问题起码让大家知道。

    1. 多想一步,其实还是刨根问底。

    在客户端都无法获取有效标记的时候,mapi面临的处境和我是一样的,接触的都不是最源头的数据。都可能是错误的数据,这个时候其实自己可以多关注mapi是如何处理的。问清楚具体怎么弄的。

    而目前自己的做法是,这个数据离我太远了,让mapi处理吧,然后不管了。我自己都不太清楚怎么处理的时候,mapi难道一定知道怎么处理吗?不要把锅丢给别人就不管了。

    自己比较迷糊的地方,要问清楚,留下疑点不好

    1. 外部系统都可能会出错,不要放过出错的可能性。

    在开发的时候,脑子里闪过这个念头,“mapi会不会把支付宝请求号弄错?毕竟不好获取”,当时就是想了这个问题,然后就自己回答:“应该没问题”

    太乐观了,突然想到“明修栈道暗度陈仓”,项羽太自信就给了刘邦机会过来打败自己。

    开发的时候保持悲观的思考,比太自信强。如果有疑问,最好把它揪出来,而不是偷懒。我这里也是想到了外部可能会出错,但是还是放过它了。

    额外

    出了问题,才想这个东西有什么影响时,有点晚了,最好再设计的时候就要想清楚这个东西有什么影响。各种问题可能有什么情况,在设计的时候如果考虑影响,也是考虑的更加全面的一种方式。

    如果出了问题,提前想的话,就能更快的想到影响,采取的方案。方案设计的时候,除了正常情况,考虑异常的时候如何进行降级,高可用的处理。

    稳定性,灾备,常规稳定性保障流程及手段,业务存在不合理的地方,需要流程梳理并优化的地方,是不是要从业务角度出发,做隔离,降级,高可用的手段。

    而不是仅仅简单的思考:“应该没问题”

    最后

    做事多想一步,提前想到。

    • 出现状况拿出来和大家一起讨论

    • 养成不放过任何疑点的习惯

    • 刨根问底,有时候怕麻烦别人,但是有问题,就是麻烦自己了

    相关文章

      网友评论

          本文标题:提升问题解决能力思考(二)

          本文链接:https://www.haomeiwen.com/subject/bfwseqtx.html