过了吗bro
点赞 3

相关推荐

01-18 22:13
门头沟学院 Java
一面: 1. threadlocal有什么作用? 能解决什么问题?2. 为什么缓存词条要使用redis哈希数据结构存储?存的是什么数据? QPS 大概会有多少?属于热点数据吗?3. 缓存雪崩在这个场景下出现的可能不高,为什么选择对雪崩进行处理?  随机时间是怎么确定的?4. 缓存雪崩有什么解决方案?5. cache-aside先更新数据库再删除缓存, 万一删除缓存操作失败了,那么就有可能读到错误的数据?有考虑使用重试或者告警机制吗?6. 多级缓存要怎么保证数据之间的一致性?7. aigc业务场景是什么?  线程池参数怎么配的?8. 批量预加载和内存映射策略是怎么进行优化的?9. sql优化的过程说一下10. 从底层数据结构角度说一下,为什么有这个最左前缀索引法则?11. SpringCloud用过哪些组件?12. 说说自己对限流,熔断,降级的理解。13. 为什么要有注册中心这个概念? 比如用nacos作为配置中心,读取配置要加什么样的注解?14. nacos作为配置中心,如果更改了一个配置,能立即生效吗15. 消息队列的可靠性是怎么保证的(说了rabbitmq)16. kafka是怎么保证消息的可靠性的?生产端,kafka自身,消费端17. 有一个集合装着1-100里的数,顺序排列,但是缺了一个数。怎么找出这个数?18. 二叉树的层序遍历二面:1. 如何保证 Redis 缓存与 MySQL 数据库的数据一致性?2. 刚刚提到在写操作时加锁,是加什么样的锁?3. 加锁时,如果有读操作怎么办?锁的粒度是怎样的?4. 除了加锁,还有哪些技术手段可以保证缓存数据的一致性?5. 使用 binlog 结合消息队列的方案,在写操作频繁时可能有什么问题?6. 什么是“延迟双删”?为什么要 sleep?这样做有什么潜在问题?7. 如果采用“先更新数据库,事务提交成功后再删除缓存”的方案,会有什么问题?8. 你如何理解分布式事务?9. 在同一个微服务系统内,什么情况下也会出现分布式事务?10. 你在本地学习时,是如何安装和搭建分布式环境所需的组件的(如数据库、Redis)?除了本地直接安装,你认为还有哪些更好的方式?11. 你使用过 Docker 吗?常见的命令有什么?12. 你写完一个接口后,如何进行自测?13. 你们的开发流程中有要求写单元测试吗?你认为编写单元测试有哪些好处?14. 如果你的单元测试需要依赖另一个服务的接口,你应该怎么写?15. 你了解 Mock 吗?它有什么用?16. 你写的单元测试会使用断言(Assert)吗?为什么断言很重要?17. 当你需要排查代码缺陷或 Bug 时,具体的排查流程是怎样的?18. 在服务器上排查问题时,你会使用哪些 Linux 指令?
发面经攒人品
点赞 评论 收藏
分享
一、 个人背景与综合意向- 自我介绍:请进行简单的自我介绍。- 业务背景:该规则引擎主要应用于唯品会的哪些具体业务场景?- 团队情况:你所在组的整体开发团队规模是多少?纯后端开发人员有多少?- 实习时间:如果入职,什么时候可以开始实习?打算实习多长时间?二、 Java 基础(重点考察 HashMap)- 数据结构:请介绍一下 HashMap 内部的数据结构。- 设计原理:为什么 HashMap 要引入红黑树?这样设计的根本目的和好处是什么?- 底层支撑:为什么底层要基于数组加链表的形式来实现哈希表?数组的作用是什么?- 哈希计算:JDK 1.8 中,哈希函数是如何计算哈希值并确定元素在桶中位置的?(扰动函数的作用)- 并发安全:HashMap 是如何保证线程安全的?具体到 JDK 1.8,它是如何利用 CAS 和 synchronized 实现的?- 不安全场景:在多线程环境下使用普通的 HashMap 会出现哪些具体的并发安全问题?(例如:值覆盖、扩容死循环等)三、 Spring 框架- 核心机制:请解释一下 Spring 的循环依赖问题以及它是如何通过三级缓存解决的?- 缓存细节:每一级缓存分别存的是什么?为什么非要引入“三级缓存”而不能只用二级缓存?(涉及 Bean 生命周期与 AOP 适配)四、 项目深度挖掘(规则引擎)- 项目核心:请详细介绍一下你负责的规则引擎项目,包括你的角色和核心产出。- 难点与挑战:在该项目中,让你印象最深刻的技术难点或业务难点是什么?- 稳定性治理:你是如何实现规则的多版本快照和回滚功能的?- 数据库设计:为了兼容旧表并实现多版本功能,你在表结构上做了哪些具体修改?- 业务逻辑:当规则出现问题时,业务人员如何通过后台系统排查过去的执行情况?- **回调机制**:业务回调功能是如何设计的?为什么要做异步优化?- 可靠性考量:如果系统在回调过程中重启,线程池阻塞队列里的任务丢失了怎么办?如何保证数据一致性?- 性能优化:你是如何发现规则执行链路存在耗时问题的?具体的优化手段(核心与非核心链路拆分)是什么?- 系统指标:该系统的平均耗时(RT)和峰值 QPS 大约是多少?五、 工程能力与运维排查- 监控手段:你们是如何对线上规则的执行时间进行监控的?- 线上排查:如果线上出现问题,你的排查流程是什么?- 容器化知识:线上系统是容器化部署吗?你对 Docker 或 K8S 有多少了解?- 日志定位:在容器环境下,你如何查找和定位历史日志文件?
查看25道真题和解析
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务