点评项目面经总结 点评项目面经总结1. 使用Redis解决了在集群模式下的Session共享问题,使用拦截器实现用户的登录校验和权限刷新 Session共享问题:在多台Tomcat服务器的集群模式下,多台Tomcat之间不会共享Session,导致在Tomcat1中携带有用户的登录信息,但Tomcat2中没有,当用户使用Tomcat2时,会判断为未登录 基于Redis实现: 将随机生成的token作为key值, 2025-05-13
Redisson分布式锁机制 Redisson分布式锁一、基于Redis的setnx实现的分布式锁存在的问题 不可重入:同一个线程无法多次获取同一把锁 不可重试:获取锁只尝试一次,失败就返回 false,没有重试机制 超时释放:锁超时释放虽然可以避免死锁,但如果是业务执行耗时较长,也会导致锁释放,存在安全隐患 主从一致性:如果 Redis 提供了主从集群,主从同步存在延迟,此时某个线程从主节点中获取到了锁,但是尚未同步给从节点 2025-05-13 杂
ThreadLocal原理 参考:https://luming.blog.csdn.net/article/details/141071290?fromshare=blogdetail&sharetype=blogdetail&sharerId=141071290&sharerefer=PC&sharesource=m0_51140831&sharefrom=from_link 一 2025-05-13 JUC
RabbitMQ RabbitMQ队列相关消息1.Provider消息生产者,就是投递消息的程序。 2.Consumer消息消费者,就是接受消息的程序。 3.没有使用消息队列时消息传递方式 4.使用消息队列后消息传递方式 5.什么是队列?队列就像存放了商品的仓库或者商店,是生产商品的工厂和购买商品的用户之间的中转站。 6.队列里存储了什么?在 rabbitMQ 中,信息流从你的应用程序出发,来到 Rabbitmq 2025-03-12 MessageQueue #MessageQueue
MYDB record MYDB1. 项目结构整体架构 Transaction Manager(TM) Data Manager(DM) Version Manager(VM) Index Manager(IM) Table Manager(TBM) 每个模块的职责如下: TM 通过维护 XID 文件来维护事务的状态,并提供接口供其他模块来查询某个事务的状态。 DM 直接管理数据库 DB 文件和日志文件。DM 的主 2025-02-21 Java #Java #Database
RPC RPC(Remote Procedure Call) 本文参考: JavaGuide星球RPC文档 https://javaguide.cn/distributed-system/rpc/http_rpc.html#http-%E5%92%8C-rpc-%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB 1. 什么是RPC?RPC原理是什么?什么是 2025-02-17 杂
点评项目 点评项目短信登录功能基于Session实现登录 Session原理 Session会为每一次会话分配一个Session对象 同一个浏览器发起的多次请求,同属于一次会话(Session) 首次使用到Session时,服务器会自动创建Session,并创建Cookie存储SessionId发送回客户端 Session在项目中的使用 保存验证码到session:session.setAttribute 2025-02-15 Java #Java #Redis #缓存 #分布式锁
Hello World Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub. Quick 2025-02-15