21、单元测试:如何mock外部依赖并提升覆盖率

你好,我是徐逸。 通过前面课程的学习,想必你已经掌握了从编码角度规避代码陷阱的方法,也了解了如何合理地打印日志与返回错误码。然而,即便我们在编码过程中十分谨慎,也无法完全杜绝代码出现问题的可能性。幸运的是,我们能够借助测试手段提前发现潜在的代码问题。...

Go服务开发高手课

22、超时和重试:如何提升高并发重要请求的成功率

你好,我是徐逸。 首先预祝你春节假期快乐。这节课是春节前最后一次更新,1月28日到2月4日期间我们会暂时停止更新,2月5日再恢复更新。 在这一章前面的课程内容里,咱们一同深入学习了如何从编码以及单元测试这两个关键层面,来全力保障服务上线之后的稳定性。...

Go服务开发高手课

23、熔断和降级:下游服务大量报错,如何快速止损

你好,我是徐逸。 通过上节课的学习,相信你已经知道,当下游服务偶尔出现超时的状况时,怎样借助重试机制来提高服务的可用性。然而,一旦下游服务出现容量过载这类较为严重的问题时,重试便不再是提升服务可用性的有效手段了。在这种情况下,我们必须通过其它方法,来...

Go服务开发高手课

24、限流:不用Redis,如何搞定高并发低延时服务限流

你好,我是徐逸。 通过上节课的学习,相信你已经清楚,当下游服务过载时,借助熔断和降级机制,我们能够有效提升服务的稳定性。不过,换个角度看,倘若我们自身作为其他服务的下游,在面对可能出现的突发流量时,怎样才能有效避免自身服务陷入过载状态呢? 今天,咱们...

Go服务开发高手课

25、隔离:订单核心流程总被干扰,如何隔离保成交

你好,我是徐逸。 通过前面两节课的学习,相信你已经掌握了从上游和下游视角出发,保障服务稳定性的方法。然而,服务稳定性保障是一个多维度、全方位的课题。想要构建高可用的服务体系,仅仅关注上下游视角是不够的。我们还需继续转换视角,从具体的业务场景着手,引入...

Go服务开发高手课

26、灰度发布:新功能上线如何有效控风险

你好,我是徐逸。 通过前面课程的学习,相信你已经从编码和架构层面,熟练掌握了提升服务稳定性的多种方法。然而,即便我们再小心谨慎,在快速迭代的开发环境中,也难以完全避免忙中出错的情况。因此,为了防止有缺陷的代码或配置直接上线,对大量用户造成不良影响,我...

Go服务开发高手课