
分布式微服务
文章平均质量分 67
Here�
这个作者很懒,什么都没留下…
展开
-
redis分布式锁解决超卖问题
SETNX 模拟场景代码 问题一 redis是单线程,web服务挂掉后,finally代码块的锁始终无法释放,导致其他请求也无法进行 解决: 增加key的过期时间 问题二 超时时间设置成功之前出现了bug怎么处理 解决:把设置值和超时时间绑定在一起 问题三 高并发场景下存在的问题,前面线程释放了后面线程刚加的锁。B线程自己加的锁被A线程给释放了。 解决方法: 每一个线程设置一个uuid,并将uuid作为redis的value;那么在释放锁的时候先判断是不是自己线程的锁,如果是再释放 ...原创 2021-08-22 21:51:31 · 598 阅读 · 0 评论 -
(项目)springboot整合MQ,以及应用的场景
引入依赖 <!--引入消息中间件的依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency> 配置 rabbitmq: host: 192.168.142.137 port: 5672原创 2021-08-18 10:27:05 · 373 阅读 · 0 评论 -
MQ消息的几种模式
```csharp private Material material; public float moveSpeed = 0.5f; void Start() { material = GetComponent<Renderer>().sharedMaterial; } void Update() { if (material) { float m_Offset .原创 2021-08-17 10:14:19 · 1014 阅读 · 0 评论 -
dubbo+springboot项目
数据同步 性能有影响。有新的系统,代码需要更新,耦合太高。 方案二:引入消息中间件(MQ),可解耦,异步化。 RabbitMQ 1、simple模式:一对一 2、work模式:消息是共享模式 限流:对于消费者说,哪个干的快,哪个就干的多。给1个,处理完后再给下一个。 用限流+手工确认。 3、发布订阅模式 X:交换机,有两个队列,每个消费者都有队列。 生产者面向的是交换机。 4、路由模式:可以指定推送消息给消费者。打标记。 5、通配符模式: * 采用MQ的场景 ...原创 2021-08-08 22:03:30 · 409 阅读 · 0 评论