熟练使用Java 8+特性:Lambda表达式、Stream API、Optional、时间API(LocalDateTime)。
理解多线程与并发:Thread、ExecutorService、CompletableFuture、锁机制(synchronized、ReentrantLock)、原子类(AtomicInteger)。
JVM基础:内存模型(堆、栈、方法区)、GC机制(CMS/G1调优)、常见OOM排查(jmap、jstack)
Spring生态
Spring Boot:自动配置原理、Starter开发、Actuator监控。
Spring MVC:请求生命周期、拦截器(HandlerInterceptor)、全局异常处理(@ControllerAdvice)。
Spring Cloud:服务注册(Eureka/Nacos)、Feign声明式调用、Hystrix熔断、Gateway网关。
ORM框架:
JPA:懒加载问题、@EntityGraph优化查询。
MyBatis:动态SQL编写、二级缓存配置、分页插件(PageHelper)。
数据库与缓存
SQL:索引优化(Explain分析)、事务隔离级别、悲观锁/乐观锁实现。
NoSQL:
Redis:数据结构选型(String/Hash/ZSet)、持久化机制(RDB/AOF)、缓存穿透/雪崩解决方案(布隆过滤器、限流)。
MongoDB:聚合管道、索引优化。
消息队列
Kafka:分区策略、消息顺序性保证、消费者组机制。
RabbitMQ:交换机类型(Direct/Topic)、死信队列、消息可靠性投递(Confirm模式)
电商平台订单系统优化
背景:日均订单量10万+,原有系统存在超卖和响应延迟问题。
职责:负责订单创建、库存扣减和超时取消模块。
技术方案与行动:
分布式锁:用Redis + Lua脚本实现库存扣减的原子操作,解决超卖问题。
异步化改造:订单创建后通过RabbitMQ异步处理日志和通知,接口响应时间从500ms降至200ms。
分库分表:按用户ID哈希拆分订单表,解决单表数据量过大(超过500万)导致的查询性能问题。
结果:
超卖问题归零,高峰期订单处理能力提升3倍。
数据库CPU负载下降40%。
财务对账系统(高准确性要求)
背景:每日需处理银行流水与企业内部交易的自动化对账,误差需低于0.1%。
职责:开发对账核心算法和差错处理模块。
技术方案与行动:
数据一致性:使用TCC(Try-Confirm-Cancel)模式保证跨系统事务(银行API + 本地数据库)。
性能优化:对账任务分片处理(按商户ID分片),利用线程池并行执行,耗时从2小时缩短至20分钟。
差错处理:提供可视化界面(Vue + ElementUI)供财务人员手动补录差异数据。
结果:
对账准确率达到99.99%,人力成本减少70%。
系统通过每日千万级交易量的压测。