# 第六章 基础架构改造案例 **Repository Path**: codingloong/aransformation ## Basic Information - **Project Name**: 第六章 基础架构改造案例 - **Description**: 基础架构改造案例 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 35 - **Created**: 2021-03-08 - **Last Updated**: 2021-03-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 第六章 基础架构改造案例 #### 仓库介绍 - 消息队列平台化改造 - Apollo配置中心升级改造 #### 问题掌握点 1. 通过案例举一反三,利用平台化思维思考什么时候可以这样做?做平台化的好处是什么?有什么场景适合我们去做? #### 小疑问 - 【问题】消息队列堆积如何处理? 1. 如果消息堆积,并设置消息过期时间,很容易导致大量消息数据由于积压导致消息丢失。 2. 当消息堆积,每秒正常消费1500/s条消息,十几分钟、二十分钟、甚至更久,很容易造成百万级、千万级的数据堆积,从而导致某个业务线出现数据问题。 - 【方案】消息队列堆积如何处理? 1. 针对消息过期策略尽可能从业务方处理,进而不会因为堆积导致消息数据丢失。 2. 首先第一时间排查堆积问题来源于什么问题,是数据生产异常,还是消费者消费异常?
如果是生产异常需要进行发布或回滚无问题版本项目继续生产数据,对有问题的数据可进行直接消费,等堆积一切正常结束后,再进行错误数据弥补,最后进行问题复盘!
如果是消费端异常或性能导致堆积,异常导致需要发布或回滚无问题版本并扩容更多消费者尽快处理堆积消息,完成处理后恢复原有架构,性能导致堆积、直接进行消费端性能扩容,堆积处理完成后,进行问题复盘,再决定改造成什么样的消费端架构。