Java面试回答

今天面试,在项目里用了redis缓存,项目官问我那缓存存储不了这么多数据,根据28原则,有大量数据需要从数据库中访问,这个时候该怎么解决或者优化呢
全部评论
根据28原则,我们可以优先缓存20%的热点数据,优化Redis的LRU/LFU淘汰策略,确保高命中率。如果Redis容量不足,可以用Redis Cluster扩展存储,或者引入多级缓存(如本地Caffeine+Redis)。同时,优化数据库索引、读写分离或分库分表,降低数据库压力。对于非热点数据,采用懒加载和异步更新机制,并通过监控Redis命中率和数据库QPS验证效果。
3 回复 分享
发布于 2025-06-10 20:04 香港
mysql读写分离?
点赞 回复 分享
发布于 2025-05-30 17:30 陕西
哥们你是成电本科还是硕士啊
点赞 回复 分享
发布于 2025-05-22 02:11 上海
采用LRU或者LFU吧,然后给库表建立索引
点赞 回复 分享
发布于 2025-05-19 16:25 重庆

相关推荐

01-11 12:43
门头沟学院 Java
一面30min左右自我介绍+项目全流程讲解 5min左右项目提问10min左右(只能回忆一部分)1.在与大模型的交互中,通常采用的是SSE 协议,为什么要在项目中使用IM来进行通讯?2.分布式ID高性能改造,做了那些方面的性能优化?3.消息推送平台中数据存储的设计?八股15min1.分布式锁?分布式锁要解决那些问题?2.数据一致性解决方案中,延迟双删的问题?3.新建一个线程池要指定哪些参数?整个运行过程?4.核心线程数量,还有最大线程数量,还有一个是工作队列。但是工作队列我们一般都会去选择有界的,很少去选择无界的这个队列。基于这三个参数的这个大小,我们应该怎么去评估?5.队列的大小应该怎么去设置?6.HashMap扩容流程7.索引失效有哪些场景?8.类型转换为什么会失效?9.RocketMQ中的事务消息原理?场景题5min左右1在不使用RoctetMQ本身提供的这一套机制的话,我们自身有没有什么其他的方案能够避免这种问题?二面30min左右(已挂)1.gap一年在做什么?2.讲一下项目中的两个点亮,如何设计,碰到的问题,怎么解决的?3.Object中有两个方法,一个是 equals,一个是 hashCode。一般是重写了equals,单身通常是要重写hashCode,为什么?4.写Java代码的时候,打交道最多的,一个是 JDK, 一个是Spring?讲一下在哪个地方见到用到了什么样的设计模式。5.MySQL的索引默认Innodb引擎,为什么?6.数据库的隔离级别7.如果开发的应用程序上线之后,突然出现CPU猛涨的情况,如何去查?8.双栈实现一个队列,口述思路。
查看22道真题和解析
点赞 评论 收藏
分享
评论
点赞
8
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务