一杯咖啡的时间,聊聊技术与成长
链路追踪(下):SkyWalking 实战与采样治理
Agent 挂上去,拓扑图自己长出来,慢接口的每一跳耗时摊开在 Trace 树上。接入只五步,真正的功夫在接入之后:采样率定多少、存储留多久、观测系统自己别变成新的故障源。
链路追踪(上):一次调用穿过八个服务,问题在哪一跳
用户投诉下单慢,八个服务的日志各查各的,时间窗对不上——没有全局视角的排障是盲人摸象。Trace、Span、TraceContext 三个概念搭起链路追踪的骨架,TraceId 跨进程传递是打通一切的关键。
网关实战:动态路由与灰度发布
新上一个服务,网关要重启——路由写死在配置里,发布窗口越来越难约。动态路由让网关配置秒级生效,灰度发布让新版本先接一成流量。这篇把两件事的实现与坑讲透。
API 网关:统一入口的第一道关卡
入口不收敛,横切逻辑就无处安放:鉴权抄十遍、证书换十台、接口改路径老版本全瞎。网关把路由、鉴权、限流、可观测收进统一入口,服务只管业务——但业务逻辑千万别进网关。
超时与重试:微服务调用的组合拳
一次调用穿八层服务,每层超时都设 3 秒——最坏情况链路末端能堆出几十秒,而用户三秒前就放弃了。超时是全链路的预算问题:层层衰减、重试守幂等、退避加抖动,预算用尽就止损。
远程调用:Feign 的优雅与陷阱
接口加注解,代理帮你发请求——调用远程服务像调用本地方法。可读性上去了,底层细节也被藏了起来:默认超时长得离谱、GET 传对象悄悄出错、没有连接池的 RT 毛刺。把链路看穿,坑就对号入座。
负载均衡:从轮询到自适应,流量怎么分才均匀
扩容的新实例一上线就超时,老实例还在喝汤——轮询把均匀理解成了每台一样多,但实例的承载能力并不均匀。从客户端与服务端 LB 的分工,到平滑加权与自适应摘除,把流量分明白。
配置的发布纪律:灰度、审计与回滚
晚上十一点改个重试参数,全量推送秒级生效,当晚对账队列堆到天亮——配置生效快是能力,全量生效快是风险。环境隔离、Beta 灰度、变更审计、一键回滚,把这份能力管起来。
配置中心:改个配置为什么要发版
换个数据库密码发三天版——配置跟着代码走发布,是发版慢的一半原因。长轮询让配置秒级生效,@RefreshScope 的坑要先认清,而配置中心的真正门槛不在技术,在发布纪律。