生产环境缺陷管理
针对大型团队Git多分支开发中bug管理复杂、易遗漏等问题,我们基于go-git打造了通用化工具git-poison,实现分布式、自动化bug追溯与发布卡点。通过“投毒-解药-银针”机制,精准阻塞带未修复bug的版本发布,避免因沟通疏漏导致的生产故障,显著降低协同成本,提升发布安全与效率。
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS,提供健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,助力用户全面掌握SQL使用情况,提升日志分析效率与治理能力。
一场FullGC故障排查
本文记录了一次线上CPU使用率异常升至104%的排查过程。通过分析发现,问题根源为频繁Full GC导致CPU飙升,而机器内存监控未明显升高,易造成误判。进一步使用JProfiler分析JVM堆内存,定位到大对象(List<Map>)占用近900MB空间,源于将Excel数据加载至内存并结构化存储,导致内存膨胀。结合代码逻辑分析,提出“激进治疗”(数据存入Redis)与“保守治疗”(减少冗余字段)两类解决方案,并总结了从监控识别到根因定位的完整排查思路,强调应关注JVM而非仅机器层面监控,对类似性能问题具有较高参考价值。
生产环境缺陷管理
git-poison基于go-git实现分布式bug追溯,解决多分支开发中bug漏修、漏发问题。通过“投毒/解药/银针”机制,自动化卡点发布流程,降低协同成本,避免人为失误,已在大型团队落地应用,显著提升发布安全与效率。
物理部署图
物理部署图描述系统运行时的硬件配置与软件部署结构,展现节点、构件、物件及连接关系,常用于理解分布式系统的网络架构与运维部署,是实现应用与硬件协同运行的关键视图。
如何在线上环境里兼容多种 RPC 协议?
本讲探讨了如何在无接口定义下完成RPC调用,并重点讲解线上环境兼容多RPC协议的实现方案。通过支持多协议共存,利用magic number识别协议类型,实现请求的自动解析与响应,确保新老系统平滑升级,降低架构演进成本,提升系统可维护性与扩展性。
如何做好SQL质量监控
SLS推出用户级SQL质量监控功能,集成于CloudLens for SLS,提供健康分、服务指标、运行明细、SQL Pattern分析及优化建议五大维度,助力用户全面掌握SQL使用情况,提升查询效率与资源治理能力。
生产环境缺陷管理
为解决大型团队多分支开发中bug漏修、漏发导致的生产故障,我们基于go-git打造了通用化工具git-poison。它实现分布式bug追溯与管理,支持投毒、解毒、银针三步闭环,自动阻塞带未修复bug的发布,降低协同成本,提升发布安全性,已在内部落地应用一年,显著减少“重复翻车”。
优雅关闭:如何避免服务停机带来的业务损失?
本讲深入探讨RPC优雅关闭机制。服务重启时,若未妥善处理,可能导致请求失败。通过引入关闭挡板、ShutdownHook钩子、引用计数与超时控制,确保正在处理的请求完成,新请求被拒绝并触发重试,实现业务无损下线。
如何在线上环境里兼容多种 RPC 协议?
本讲探讨了如何在线上环境兼容多种RPC协议。由于历史原因,系统中常存在多类RPC框架,导致维护成本高。为实现平滑升级,可通过支持多协议共存,利用magic number识别协议类型,动态选择解析方式,实现新老协议无缝切换,降低升级复杂度,提升系统可维护性与扩展性。