- 博客(219)
- 收藏
- 关注
原创 【八股消消乐】品读Redis过期时间机制设计
熟悉Redis过期时间机制,如控制删除开销、定期删除的频率、从库处理过期Key以及持久化处理过期Key。针对xx业务重试机制调整缓存过期时间,缓存命中率基本上没有变化,Redis开销降低了30%。针对用户列表检索业务,设计缓存预加载与超短过期方案,提升了缓存命中率。🚩面试问:- 你有没有遇到过动态确定过期时间的场景?比如说根据请求特征、计算时间、重要性、优先级等,为同一个业务场景的不同请求设置不同的过期时间。- 你有没有用过本地缓存?你知道它是如何删除过期 key 的吗?
2025-07-15 13:54:22
854
原创 【八股消消乐】Kafka集群 full GC 解决方案
🔍简历内容:为解决xx业务高峰期响应时间长、客户端超时问题,通过优化acks、批次并将压缩算法从 Snappy 更换为 LZ4,提高生产者发送效率。经排查,kafka 集群触发了 full GC 之后,停顿时间就会很长,导致 Kafka 吞吐量显著下降,有时候还会导致 Kafka 认为主分区已经崩溃触发主从选举,通过调大 JVM 的堆,并且在堆很大的情况下,启用 G1 垃圾回收器解决了问题。
2025-07-12 21:50:33
1060
原创 【八股消消乐】浅尝Kafka性能优化
🔍简历内容:熟悉Kafka消息队列原理及常见优化手段,如分段与索引、零拷贝、Page Cache、顺序写、分区、批量处理、压缩等。🚩面试问:Kafka 用到的这些优化技术,很多中间件也用到了,你能举几个例子吗?
2025-07-11 15:18:37
767
原创 【八股消消乐】手写一个简易消息队列
- Kafka 为什么要引入 topic?- Kafka 为什么要引入分区?只有 topic 行不行?- Kafka 为什么要强调把 topic 的分区分散在不同的 broker 上?- Kafka 为什么要引入消费者组概念?只有消费者行不行?
2025-07-10 15:48:56
1281
原创 【八股消消乐】消息队列优化—重复消费
🔍简历内容:熟悉布隆过滤器基本原理,利用布隆过滤器、Redis、唯一索引实现xx业务幂等,避免重复消费。🚩面试问:如果你的流量中,几乎不存在重复请求,比如说重复请求占比不到 1%,如何设计方案。
2025-06-30 13:45:14
626
原创 【八股消消乐】消息队列优化—消息丢失
🔍简历内容:熟悉Kafka写入语义、ISR、OSR、unclean选举基本原理。自主实现Kafka回查中间件并开源,利用分区表保证回查机制的高性能和高可用,基于哈希计算实现消息有序,最终实现消息回查机制,解决了xx业务消息丢失问题。🚩面试问:- 在支持 Kafka 回查机制中,要是回查中间件把消息转发到业务 topic 了,但是标记成已发送失败,会发生什么?- 在支持 Kafka 回查机制中,你可以考虑把关系型数据库换成 Redis,这样换的话有什么优缺点?
2025-06-29 19:20:27
1022
原创 【八股消消乐】消息队列优化—消息积压
🔍简历内容:熟悉消息积压解决方案。针对xx业务(生产者按照用户输入的参数来查找符合条件的数据,然后一条条处理)增长出现的消息积压问题,通过改造生产者、消费者逻辑,实现聚合消息及批量操作,解决了消息积压问题,并消减了两个消费者,节省了资源。对于批量消费,又采用了异步处理方式来提升效率,通过工作线程重试机制,并将消费失败的消息丢回消息队列避免了消息丢失问题。🚩面试问:有些人认为,优化生产者性能也能解决消息积压,你觉得能还是不能?为什么?在出现消息积压的时候,能不能在生产者发送的时候加个限流?毕竟,
2025-06-27 14:30:46
798
原创 【八股消消乐】消息队列优化—消息有序
💬技术栈:RocketMQ、Kafka、RabbitMQ🔍简历内容:熟悉Kafka消息分区。为解决Kafka线上消息积压、broker性能抖动问题,针对业务内有序为topic实现了多分区。参考Redis槽与槽分配机制解决了数据不均匀问题。针对分区扩容采用了停顿方案解决消息失序问题。🚩面试问:你觉得在多分区方案里面,如果某个分区消息积压了就启用异步消费,这种解决思路你觉得怎么样?🔨复盘:单分区、异步消费、多分区(数据不均匀、消息失序)。
2025-06-25 11:50:10
746
原创 【八股消消乐】消息队列优化—延迟消息
🔍简历内容:熟悉延迟队列,基于MySQL自主实现Kafka延迟消息功能,并实现消息的有序性。🚩面试问:如何实现不同 topic 设置不同延迟时间,topic 的分区该怎么设置?延迟消费者又该怎么办?🔨复盘:定时任务调度、分区设置不同延迟时间、基于MySQL实现、批量操作
2025-06-24 14:40:47
840
原创 【八股消消乐】消息队列优化—系统架构设计
为什么要用消息队列?【其实就是再问**在这个业务场景下,不异步、不解耦或者不削峰会有什么问题**?】答案:如果不用消息队列,**性能差、扩展性差、可用性差**。【同步调用的缺点】性能差:业务方必须停下来等待结果,如果我这里需要通知三个下游,那么就需要发起三次调用,并且等它们各自的结果返回之后才能继续往下执行,或者返回响应,这样性能太差了。
2025-06-23 13:54:00
1195
原创 【八股消消乐】Elasticsearch查询优化
根据业务定制Elasticsearch插件,实现基于内存使用率和CPU 使用率限流;针对xx业务实时性不高,引入消息队列Kafka,通过监听binlog并将生成消息丢到Kafka中,实现削峰和限流;针对高并发业务设计策略保护协调节点;设计简易双集群方案来替换CCR方案,成本节约了近80%。熟悉Elasticsearch倒排索引机制,了解Elasticsearch常用优化手段。通过Search After优化分页查询,利用批量提交解决了消息积压问题,对于公司日志Logstash全量同步问题,通过引入降级机制
2025-06-22 16:42:04
1619
原创 【八股消消乐】Elasticsearch优化—检索Labubu
💬技术栈:Elasticsearch🔍简历内容:熟悉Elasticsearch节点角色、索引与分片基本原理。根据业务定制Elasticsearch插件,实现基于内存使用率和CPU 使用率限流;针对xx业务实时性不高,引入消息队列Kafka,通过监听binlog并将生成消息丢到Kafka中,实现削峰和限流;针对高并发业务设计策略保护协调节点;设计简易双集群方案来替换CCR方案,成本节约了近80%。🚩面试问:主分片是由主节点选出来的,那么主节点自己又是怎么选出来的呢?
2025-06-20 14:42:25
1079
2
原创 【多模态&强化学习】基于统一多模态思维链的奖励模型
🔨动机:传统训练方法如监督微调(SFT)`难以获得大规模的多模态CoT奖励数据`;`现有的奖励模型在复杂场景中往往提供不准确或不可靠的奖励信号`。🚩创新:首次提出统一的多模态CoT奖励模型:UNIFIEDREWARD-THINK是第一个能够进行多维、逐步长链推理的统一多模态CoT奖励模型,适用于视觉理解和生成任务。1. 冷启动阶段:首先`使用少量图像生成偏好数据蒸馏GPT-4o`的推理过程,用于模型的冷启动学习CoT推理的格式和结构。2. 拒绝采样阶段:准备大规模的统一多模态偏好数据,激励模型在各
2025-06-19 20:57:26
1012
原创 【八股消消乐】构建微服务架构体系—保证服务高可用
💬技术栈:微服务架构🔍简历内容:通过引入全方位的监控与告警、各种服务治理措施,解决了由于其他业务组功能上线而引起的Redis大对象请求慢,导致核心服务超时问题,最终可用性从99达到了999。🚩面试问:四个九代表全年不可用时间不超过 53 分钟,那么你知道三个九和五个九又各自代表多少时间吗?从你个人经历出发,你认为四个九的可用性,究竟难不难达成?🔨复盘:发现问题、计划方案、落地实施、取得效果、后续改进。
2025-06-19 19:43:48
578
原创 【八股消消乐】构建微服务架构体系—一致性抽象
🔍简历内容:重新设计第三方平台调用接口,提供一致性抽象,并引入客户端治理。全面接入可观测性平台,包括 Prometheus 和 Skywalking,并且配置了告警。🚩面试问:(1)你们公司有没有出现什么因为第三方服务不可用引发的故障?后面你们有没有设计什么改进方案?(2)你的工作经历中有没有什么内容主要是提高同事研发效率的?如果有,你是怎么向面试官介绍这个项目并且让他相信你确实提高了研发效率的?
2025-06-18 23:27:09
643
原创 【多智能体&强化学习】构建端到端的自主信息检索代理
🔨动机:获取高质量、细粒度的浏览数据以反映用户意图和丰富的交互上下文;构建支持长期推理和任务分解的可靠轨迹;设计可扩展且具有泛化能力的训练策略,使网络代理能够在分布外的网页环境中、复杂的交互模式和长期目标下表现出稳健的行为。🚩创新:论文提出了一个系统的、端到端的框架,用于从头开始构建多步信息检索网络代理。该框架包括四个关键阶段:数据构建、轨迹采样、监督微调和强化学习。
2025-06-15 15:24:26
979
原创 【八股消消乐】构建微服务架构体系—链路超时控制
💬技术栈:微服务架构🔍简历内容:熟悉链路超时控制策略,有一定的实践经验。🚩面试问:如果 A 调用 B,B 调用 C 的这条链路的超时时间设置为 1s,但是 B 这个服务的提供者就说自己是不可能在 1s 内返回响应的,那么该怎么办?
2025-06-15 14:58:33
1134
原创 【八股消消乐】构建微服务架构体系—实现制作库与线上库分离
[太阳]【八股消消乐】构建微服务架构体系—实现制作库与线上库分离💬技术栈:微服务架构🔍简历内容:熟悉主流隔离策略,为保证C端用户服务体验,实现制作库与线上库隔离。🚩面试问:如果采用分组隔离策略,热点的放一组,非热点的放一组,你觉得可不可行?为什么?🔨复盘:慢任务隔离、制作库与线上库分离。
2025-06-14 14:56:47
711
原创 【八股消消乐】构建微服务架构体系—限流算法优化
💬技术栈:微服务架构🔍简历内容:熟悉主流限流算法,基于Go语言实现BBR算法适应业务。为gRPC实现了各种限流算法,包括基于Redis实现的集群限流版本(开源)。🚩面试问:针对 IP 限流是一个非常常见的限流方案,那么怎么获得用户的 IP 呢?尤其是在请求经过了网关的情况下,怎么避免自己拿到的是网关的 IP?🔨复盘:限流算法、限流对象、突发流量、请求大小、计算阈值。
2025-06-12 14:08:20
1057
原创 【多智能体】基于嵌套进化算法的多代理工作流
1. 范式转变:首次明确将代理工作流程自动化表述为成本效益驱动的多目标优化问题,强调了LLM异质性和复杂性多样性在多智能体系统发展中的关键作用。2. 实用解决方案:提出了一种基于生态位进化算法的框架EvoFlow,能够在各种任务领域中自动演化出异质且复杂性自适应的代理工作流程,最小化人为干预。3. 实证评估:在七个基准测试上的广泛实验表明,EvoFlow具有多样性、高性能和经济性,优于之前的手工制作和自动化工作流程。4. 多样性演化:能够演化出从简单I/O任务到复杂多轮交互的工作流程群体。5. 性能
2025-06-11 21:16:59
1049
原创 【八股消消乐】构建微服务架构体系—降级策略全总结
[太阳]【八股消消乐】构建微服务架构体系—降级策略全总结💬技术栈:微服务架构🔍简历内容:熟悉常见降级策略,为维护C端核心业务,实现B端xx服务降级策略,最终C端xxx业务QPS提升了xx效果,保证了服务高可用。🚩面试问:(1)怎么判定一个服务要不要降级。(2)降级之后怎么恢复。🔨复盘:降级"写服务"、降级“慢路径”。
2025-06-11 17:15:56
1178
原创 【多智能体】受木偶戏启发实现多智能体协作编排
1. 动态编排:提出了一种集中式的“指挥者”(puppeteer)来动态选择和组织代理(puppets),根据任务状态的演变进行推理。这种编排方式超越了静态的协作模式,提供了灵活且可扩展的代理协调。2. 自适应进化:通过强化学习(RL)不断更新指挥者的策略,利用已完成任务的反馈来优化代理选择。随着时间的推移,指挥者学会了强调强代理轨迹并剪枝不有效的代理,使系统逐步进化到更高的效率和性能。3. 实验验证:在封闭域和开放域场景下的实验表明,该方法在提高解决方案质量的同时减少了计算开销。分析进一步揭示了指挥者
2025-06-10 22:55:15
838
原创 【八股消消乐】构建微服务架构体系—熔断恢复抖动优化
[太阳]【八股消消乐】构建微服务架构体系—熔断恢复抖动优化💬技术栈:微服务架构🔍简历内容:针对强缓存依赖业务,独立定制熔断策略,保证了系统的高可用性。🚩面试问:(1)怎么判断微服务出现了问题?(2)怎么知道微服务恢复了?🔨复盘:指标、阈值、熔断策略、恢复。
2025-06-10 16:27:42
982
原创 【多智能体】基于LLM自进化多学科团队医疗咨询多智能体框架
本文提出了一种新颖的多学科团队多智能体医疗咨询框架MDTeamGPT,通过残差讨论模式和共识聚合减少了信息冗余,提高了讨论效率。通过利用两个知识库,框架动态提高了整体咨询准确率,并展示了一定的泛化能力。尽管框架的整体性能在很大程度上取决于存储和利用咨询经验的基础模型的能力,但其在当前医疗咨询场景中仍表现出色。
2025-06-09 23:23:32
992
原创 【八股消消乐】构建微服务架构体系—负载均衡算法如何优化
(1)如果公司有 Nginx 之类的网关,或者微服务网关,那么用的是什么负载均衡算法?(2)如果公司用客户端负载均衡的话,用的是什么负载均衡算法?(3)有没有出过和负载均衡相关的事故,如果有,那么是什么原因导致的,怎么解决的这个事故,它体现了负载均衡算法的什么缺陷?(4)怎么根据调用结果来调整权重,从而影响负载均衡的效果?(5)怎么利用一致性哈希负载均衡算法,来提高本地缓存命中率,缓解数据不一致性问题?
2025-06-09 12:48:54
660
原创 【具身智能体】EvoAgent: Agent Autonomous Evolution with Continual World Model for Long-Horizon Tasks
1. 自主演化能力:EvoAgent是第一个能够自主完成各种长时任务(LH)的自主演化代理,无需人类干预。2. 持续世界模型:提出了一种新的持续世界模型(WM),能够通过闭环动态不断更新多模态经验池和世界知识。3. 模块化设计:EvoAgent包含三个模块:记忆驱动的规划器、世界模型引导的动作控制器和经验启发的反射器,每个模块都有明确的功能和相互作用。4. 两阶段课程学习机制:通过两阶段课程学习算法选择经验以进行任务自适应的世界模型更新,优化了经验选择。5. 实验验证:在Minecraft上进行的
2025-06-08 21:57:05
1191
原创 【八股消消乐】构建微服务架构体系—服务注册与发现
手段总结:(1)启动备份注册中心,而且是异构的备份中心。考虑能做到自动切换吗?还是依赖于人手动切换?(2)兜底节点:人手动配置一些固定 IP,万一注册中心崩了就用这个。这个缺陷就是 IP 需要人来维护,比如说万一某个IP 不可用了。具体流程:1、禁止所有部署(我们使用aws,部署可能会换新机器)【防止故障扩散,etcd集群在节点异常时若继续扩缩容,可能导致数据不一致或脑裂问题。】2、保护住所有的现有机器,禁止scale in和scale out【多花了很多钱】3、在经历多轮抢修依然无法启动et
2025-06-08 15:21:43
1193
原创 【八股消消乐】MySQL存储引擎InnoDB知识点汇总
(1)内存池- 客户端读取数据时,如果数据存在于缓冲池中,客户端就会直接读取缓冲池中的数据,否则再去磁盘中读取;- 对于数据库中的修改数据,首先是`修改在缓冲池中的数据`,然后`再通过 Master Thread 线程刷新到磁盘上`。- 缓冲池中`不仅缓存索引页和数据页`,还包括了 `undo 页,插入缓存、自适应哈希索引以及 InnoDB 的锁信息`等等。- InnoDB 存储引擎会`先将重做日志信息放入到缓冲区中`,然后`再刷新到重做日志文件中`。- InnoDB 允许多个缓冲池实例,从而减少
2025-06-07 16:11:13
806
原创 【八股消消乐】MySQL参数优化大汇总
[太阳]【八股消消乐】【八股消消乐】MySQL参数优化大汇总💬技术栈:MySQL🔍简历内容:熟悉MySQL体系结构,了解SQL语句处理底层,熟悉常用的MySQL参数调优手段。🚩面试问:你了解SWAP 页交换吗?InnoDB 的 IBP 的内存大小是有限的,它是如何将热点数据留在内存中,淘汰非热点数据的?
2025-06-06 21:21:16
1104
原创 【八股消消乐】端午节产生的消费数据,如何分表分库?
假设我们基于单表来实现,每天产生上百万的数据量,不到一个月的时间就要承受上亿的数据,这时单表的性能将会严重下降。因为 MySQL 在 InnoDB 存储引擎下创建的索引都是基于 B+ 树实现的,所以查询时的 I/O 次数很大程度取决于树的高度,随着 B+ 树的树高增高,I/O 次数增加,查询性能也就越差。分区表是由多个相关的底层表实现的,这些底层表也是由句柄对象表示,所以我们也可以直接访问各个分区,存储引擎管理分区的各个底层表和管理普通表一样(所有的底层表都必须使用相同的存储引擎),分区表的索引只是在各
2025-06-05 11:45:27
949
原创 【八股消消乐】如何解决SQL线上死锁事故
💬技术栈:MySQL、锁🔍简历内容:熟悉MySQL行锁实现算法,如record lock、gap lock、next-key lock,熟悉预防死锁的常用手段。🚩面试问:(1)项目初期没有实现读写表分离,都是基于一个主库完成读写操作,业务量逐渐增大后,数据库出现了异常报警。(2)根据日志分析,作为`幂等性校验的一张表`经常出现死锁异常,怀疑索引导致的死锁问题。(3)订单在做幂等性校验时,先是通过订单号检查订单是否存在,如果不存在则新增订单记录。(4)分析可能的原因并给出解决方案。
2025-06-04 11:56:14
670
原创 【八股消消乐】索引失效与优化方法总结
💬技术栈:MySQL、索引🔍简历内容:熟悉MySQL索引存储结构,如B+tree索引、Hash索引、R-Tree索引、Full-text索引,有一定的索引调优经验。🚩面试问:某业务需要根据商品类型、订单状态筛选出需要的订单,并以订单时间进行排序,目前sku索引已存在,该SQL存在的问题以及如何优化:`select * from order where status =1 and sku=10001 order by create_time asc`
2025-06-03 16:45:29
745
原创 【系统架构师】2025论文《WEB系统性能优化技术》
- **时间**:2021年3月启动,2022年3月上线- **参与方**:我单位与某省公安厅联合研发- **目标**:解决数据全生命周期(存储/传输/使用/共享)安全问题- **核心价值**:通过性能优化保障系统高并发处理能力- **用户群体**:省市县三级公务员
2025-05-15 22:13:37
1156
原创 【系统架构师】2025论文《基于架构的软件设计方法》【最新】
2021年3月,我单位联合某省公安厅研发了《数据脱敏管理系统》。系统以数据脱敏为核心,分为资源模块、敏感属性模块、脱敏规则模块、脱敏模块、权限模块、审计模块,解决了数据在其生命周期的传输、存储、使用、共享环节的安全问题。在项目中,我担任系统架构设计师,负责架构设计工作。
2025-05-12 14:26:55
1440
原创 【八股消消乐】慢SQL优化手段总结
(1)无索引、索引失效导致慢查询;(2)锁等待:常用的存储引擎有 InnoDB 和 MyISAM,前者支持行锁和表锁,后者只支持表锁。行锁更适合高并发场景,但在使用 InnoDB 存储引擎时,我们要特别注意行锁升级为表锁的可能,在批量更新操作时,行锁就很可能会升级为表锁。(3)不恰当的 SQL 语句,例如`<SELECT *>`,`<SELECT COUNT(*)> `,在大数据表中使用 `<LIMIT M,N>` 分页查询,以及`对非索引字段进行排序`等等。
2025-05-12 14:15:41
853
原创 【系统架构师】2025论文《系统可靠性设计》【含记忆口诀】
2021年3月,我单位联合某省省厅研发了《数据脱敏系统》项目,解决了数据在其生命周期的存储、传输、使用和共享环节中的安全问题。该系统以数据脱敏功能为核心,分为资源模块、敏感属性模块、脱敏规则模块、脱敏管理模块、权限模块、审计模块等。在项目中,我担任系统架构设计师职务,主要负责系统架构相关工作。
2025-05-11 18:20:29
1249
原创 【八股消消乐】项目中如何排查内存持续上升问题
我们平时遇到的`内存溢出`问题一般分为两种:- 由于大峰值下没有限流,`瞬间创建大量对象而导致的内存溢出`;【使用限流就可以解决】- 由于`内存泄漏`而导致的内存溢出。【程序的 BUG,我们需要及时找到问题代码】
2025-05-11 13:13:48
830
原创 【八股消消乐】项目中如何优化JVM内存分配?
基于GCViewer工具分析日志,优化JVM内存分配解决频繁GC问题,实现万级抢购接口QPS提高了近60%,响应时间降低了近50%。(1)如何查看 JVM 堆内存分配;(2)对象在堆中的生命周期;(3)优化JVM内存分配的手段有哪些?;(4)使用GCViewer分析日志过程中,指标的含义;
2025-05-10 14:24:03
992
原创 【八股消消乐】你在项目中如何优化垃圾回收机制?
(1)垃圾收集器的种类很多,我们可以将其分成两种类型,一种是`响应速度快,一种是吞吐量`高。通常情况下,`CMS 和 G1 回收器的响应速度快`,`Parallel Scavenge 回收器的吞吐量高`。(2)在 JDK1.8 环境下,默认使用的是 `Parallel Scavenge(年轻代)+Serial Old(老年代)垃圾收集器`。(3)通常情况,JVM 是默认垃圾回收优化的,在没有性能衡量标准的前提下,`尽量避免修改 GC 的一些性能配置参数`。如果一定要改,那就必须基于大量的测试结果或线上的
2025-05-09 13:55:33
1213
原创 【八股消消乐】Java编译优化技术在项目中的应用
😊你好,我是小航,一个正在变秃、变强的文艺倾年。🔔本专栏《八股消消乐》旨在记录个人所背的八股文,包括等相关知识点,期待与你一同探索、学习、进步,一起卷起来叭!
2025-05-08 11:45:02
935
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人