架构评审会上大家都说"这个设计挺好的",散会后群里炸出了四十条反对意见。我把手上的资料翻出来又读了两遍。我在心里给这次的架构评审准备了几条风险点。我把这条经验写进了团队 wiki
😂 IT段子
程序员日常、代码趣事、技术梗图,让你在学习之余轻松一笑
架构的演进通常是问题驱动而非设计驱动。我在心里把这条调用链画了一遍,发现有一个环。那一刻我觉得自己还是很专业的
微服务拆了二十个,一次下单要跨八个服务,链路追踪看着像绕地球一圈。我把手上的资料翻出来又读了两遍。我拉了个会议,讨论了一小时,结论是再开一次。我把它写进了组内的避坑文档第一章
我把这条调用链画了出来,发现有一个环。我盯着屏幕沉默了十分钟。我把这个同步调用改成了消息,耦合小了很多。这条经验值直接拉满
好的架构是让改动局限在一个地方。我盯着屏幕,觉得这才是我的一天。我把这个接口的返回做成了版本兼容的,老调用方不受影响。办公室安静得能听见键盘声
我把这条调用链画了出来,发现有一个环。这套流程走下来,我从头到尾又确认了一遍。我发现这个接口被三个服务依赖,改动成本很高。第二天这个方案就变成了团队标准做法
我把网关的路由规则精简了一遍,清晰多了。这套流程走下来,我从头到尾又确认了一遍。我发现这个服务的容量规划和实际流量差得很远。世界瞬间清净了
这个接口的契约一旦定下来,改动成本会指数上升。我忽然觉得,这可能就是这一行的常态。我在心里给这次的技术选型排了个优先级。复盘会上我们把它列成了案例
我把网关的路由规则精简了一遍,清晰多了。我把手上的资料翻出来又读了两遍。我把这个网关的路由规则精简了一遍,清晰多了。世界瞬间清净了
高并发三件套:缓存、限流、降级,全用上之后问题变成了三个新问题。我发现自己居然没法反驳。我发现这个架构图上的服务有一半已经不再维护。好在最后有惊无险