项目中错误类型的定义和思考

现在开发业务都是微服务,api调用rpc,rpc之间互相调用。除了常规的链接失败或超时以外,还有很多业务上的错误。为了使返回的错误码容易判断和查错,通常会靠一个统一定义的错误代码映射表。其实我们平时http的各种错误码也就是一个映射表。
有一种做法是代码里写死一个映射表文件,每次有新增去修改这个文件。

但是当系统渐渐变大。业务可能会按模块进行拆分并接耦合,业务之间可能只是一个对接,代码repo不会有一个公有的错误码包。这样返回的错误就比较难定位了。再加上每次要去修改文件,彼此之间合代码还可能会出现错误码冲突,然后还要fix merge,很麻烦。

想到一个相对简单的方式,提供一个错误码的微服务,每次代码中要增加新的错误类型就向该微服务请求一个错误码。而所有服务启动时都会调用错误码微服务拉到线上所有的错误码拉到内存,这样就可以实时的保证对各种错误码的映射,可以在捕捉下游调用出错时直接用内存里的错误码映射表打印出错误类型的详细信息,如果下游做的有心的话甚至可以把可能的错误原因都列出来,便于新同学接手。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值