微服务架构
取个什么名字好呢ovo
在校计科专业学生,热爱编程,目前正在后端领域不断学习,希望与大家沟通交流学习技术!
展开
-
Redis分布式锁结合Lua脚本实现
通过 Lua 脚本,Redisson 能够确保分布式锁的一系列操作(获取锁、设置过期时间、释放锁)的原子性,这对于实现分布式锁等关键功能至关重要。Lua 脚本不仅可以确保操作的原子性,还能提高性能,因为它可以避免客户端和服务器之间的多次往返通信。原创 2024-07-30 14:28:56 · 411 阅读 · 0 评论 -
Redis分布式锁在抢券场景中的使用
如果在它加锁的时候来了一个新线 一个新线程,他不会立马结束这个线程,而是会有个while尝试获取锁机制 e尝试获取锁机制,一旦短时间内,加 间内,加锁线程结束了,他就会立马获得锁,提高了分布式下的性能。但是这个setnx的锁不好控制锁的有效时间,所以就用了redis的客户端锁redisson,它自带看门狗机制,帮我们处理锁的有效时间。原创 2024-07-30 14:22:54 · 243 阅读 · 0 评论 -
微服务架构里的登录拦截器
它的泛型是map结构,记录登录上下文映射。然后使用Sa-token框架提供的StpUtil工具类获取请求token信息,然后从token信息里面拿到登录id,再把这个登录id添加到我之前创建的请求修改器里面,其中key是loginId和后续每个微服务的登录拦截器做统一,value是用户具体的登录id。定义有个登录拦截器类实现GlobalFilter全局过滤器,重写它的filter方法,形参是当前http服务器上下文,包含请求和响应的信息。然后获取请求路径,如果请求路径是我们的登录接口,才会通过过滤链处理。原创 2024-07-30 13:58:18 · 314 阅读 · 0 评论