2025-04-11


1. Spring Cloud 组件介绍

答题结构:核心组件 + 功能说明 + 应用场景简述

  • Eureka:服务注册与发现组件,类似于服务的“电话本”。
  • Ribbon:客户端负载均衡工具,配合 RestTemplate 使用,实现服务间的请求负载均衡。
  • Feign:声明式服务调用工具,简化服务间的 HTTP 通信,基于 Ribbon 和 Hystrix。
  • Hystrix / Resilience4j:服务容错、熔断、降级组件,用于防止雪崩效应。
  • Gateway:API 网关组件,提供统一入口、权限校验、路由转发等功能。
  • Config:集中式配置管理,支持动态刷新,适合多环境配置统一管理。
  • Bus:配合 Config 使用,实现配置动态刷新传播。
  • Sleuth + Zipkin:分布式链路追踪,分析请求在各服务之间的调用链路。

2. 大批量插入数据的办法

答题结构:常用方法 + 优化建议 + 实战经验

  • 使用 JDBC 批处理addBatch() + executeBatch()),一次性提交多条 SQL。
  • 使用数据库特性,如 MySQL 的 LOAD DATA INFILE,性能极高。
  • ORM 框架优化,例如 MyBatis 使用 foreach 标签 + 手动 commit 控制事务大小。
  • 合理设置事务大小(如每 500 或 1000 条提交一次),防止内存占用过高。
  • 使用中间件(如 Kafka + Flink)进行异步缓冲再写入数据库。

3. RocketMQ 应用场景

答题结构:核心优势 + 场景举例

  • 解耦异步:订单系统中,下单后发送消息到库存、物流系统。
  • 削峰填谷:秒杀抢购场景,先写入 MQ,消费者异步消费。
  • 事务消息:例如电商系统中订单生成与扣款操作需要强一致性。
  • 广播消息:全量通知多个系统,如系统升级广播。
  • 延时消息:比如 30 分钟未支付订单自动取消。

4. Redis 的数据结构和应用场景

答题结构:数据结构 + 典型应用

  • String:最基本类型,常用于缓存简单对象、计数器。
  • Hash:适合存储对象,如用户信息(user:id -> {name, age})。
  • List:消息队列(先进先出),比如评论列表、日志收集。
  • Set:无序不重复,适合标签、点赞用户集合等。
  • ZSet(有序集合):排行榜、延迟队列(score 控制时间戳)。
  • Bitmap:统计活跃用户、签到、布隆过滤器底层实现。
  • HyperLogLog:大数据去重统计,如 UV(独立访客)计数。

5. Git 分支的 release 和 merge 区别

答题结构:用途 + 流程对比

  • release 分支:用于预发布、稳定测试阶段。通常从 develop 分出,测试通过后 merge 到 masterdevelop
  • merge:是 Git 的操作,不是分支;用于将一个分支的变更合并到另一个分支。
    • 合并方式:--no-ff--squash 等。
    • 注意冲突处理与历史记录维护。

6. Redis 的高可用方案

答题结构:核心方案 + 各自特点

  • 主从复制:基础高可用架构,读写分离,主库故障无法自动切换。
  • 哨兵 Sentinel:自动故障转移 + 客户端通知 + 主从结构。
  • Redis Cluster:分片 + 高可用,适合大规模数据处理。
  • 持久化机制:RDB(快照)和 AOF(日志)双重保障。
  • Keepalived + VIP:构建高可用服务入口层。

7. MySQL 索引类型介绍

答题结构:类型 + 应用场景

  • 主键索引(Primary Key):唯一性 + 自动创建聚簇索引。
  • 唯一索引(Unique):保证列唯一性。
  • 普通索引(Index):提高查询效率,无唯一性限制。
  • 联合索引(Composite Index):多列组合索引,需注意最左前缀原则。
  • 全文索引(Fulltext):适用于大文本 LIKE 查询,如搜索引擎功能。
  • 空间索引(Spatial):用于地理信息系统(GIS)。

8. 分库分表场景

答题结构:背景 + 具体应用 + 难点

  • 场景:单表数据量过大(千万级以上)或单库连接压力大。
  • 分表:如订单表按用户 ID、时间进行分表。
  • 分库:不同业务分库,或按租户、地区等逻辑隔离。
  • 实现方式:ShardingSphere、MyCat、中间件路由等。
  • 难点:跨库事务、全局 ID、聚合查询、数据迁移。

9. Linux 常用命令

答题结构:按使用场景分类

  • 文件管理ls, cd, cp, mv, rm, mkdir, touch
  • 权限管理chmod, chown, chgrp, umask
  • 进程管理ps, top, kill, htop, nice
  • 网络管理ping, netstat, ss, curl, wget, telnet
  • 磁盘管理df, du, mount, umount
  • 日志查看tail -f, less, grep
  • 系统资源uptime, free, vmstat, iostat
  • 包管理(CentOS):yum install, rpm -qa

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 常见四种输送线类型,你更中意哪一种? 根据工业4.0物流发展的需求,工业自动化、高速化和智能化是未来的趋势。而工...
    输送哥玮创自动化阅读 35评论 0 0
  • 关于AI赋能课堂的话题,最近两年讨论的沸沸扬扬,尤其是近期deepseek的到来更加助攻了这个趋势。对于AI,我也...
    一朵小红花呀阅读 68评论 0 0
  • Kafka 和 RocketMQ 对比总结 有个面试题是这样的:你知道我们为什么日志之类的用kafka,应用类用r...
    欢喜的看着书阅读 22评论 0 0
  • 核心素养视域下小学低段识字教学中红色文化渗透路径研究** (总字数约3200字) --- **摘要** 在立德树人...
    新颖菜籽阅读 94评论 0 1
  • 以爱为桨,渡人渡己——论教育者的修行之道 (2025年4月11日) 教育,是一场以生命唤醒生命的修行。当孩子们用叛...
    吴国花阅读 47评论 0 0