Rabbitmq
張義帥
喜欢交朋友大家一起交流一下呢~
展开
-
消息中间件 rabbitmq 3
1.虚拟主机怎么理解,vhost 就是权限,命名空间,就像一个tomcat绑定多个应用一样 2.启动,关闭rabbitmq的 rabbitmq-server 和rabbitmqclt 3.集群注意点 弱鸡,不是为了高可用,是高吞吐 允许生产者,消费者,在单个节点崩溃的情况下继续运行 通过节点的扩展提高吞吐量 某台机器挂了的情况下,消息是不进行转移的 元数据:队列名称,属性(可以持久化,是否自动删除) 交互器名称,类型,属性,绑定关系 4.为什么队里的中的消息,不进行复制呢? ...原创 2021-01-18 14:05:43 · 97 阅读 · 0 评论 -
消息中间件 RabbitMq 2
1.消息生产者的权衡 生产者,可以在信道加事务 生产者发消息确认,一般确认,批量确认,异步监听确认 备用交换器模式 2.消息消费者的权衡 消息拉取,推送,一般使用推送 3.消费者的拒绝,有reject,nack两种形式,拒绝的这个消费者,还是可以被轮训到的 nack支持批量拒绝 4.死信消息,消费者拒绝,时间过期,超过队列的最大长度 DLX死信交换器 5.死信交换器,和备用交换器的区别? 备用交换器针对的是生产者,消息还没有到队列中 死信交换器针对的是消费者,消费者拒绝放到了...原创 2021-01-15 11:12:47 · 65 阅读 · 0 评论 -
Seata 的TCC 模式问题分析(待续)
Seata 后续: 1.TCC模式,t-try prepare c-confirm c-cancel, 2.除了TM 上面的@GloadTansational,注解外,各个的RM的接口上面要有@TwoPhaseBusinessAction(name=,commitMethod=, rollbackMethod=) 3.如果t,出现问题,则回滚执行rollback方法,如果c,出现问题了,就不回滚 4.T-papare-尝试去做,不真正的操作业务sql,或者业务字段,第一阶段的try,只是对目标字段的尝..原创 2020-12-07 15:21:53 · 991 阅读 · 0 评论 -
RabbitMq 生成订单后续,简单说点
1.预生成订单id,订单信息存到redis中,订单id 返回给前端。提到吞吐量。 2.消费到死信队列中的消息话,lua脚本库存+1 3.微信支付有预支付,先生成二维码,然后扫码支付。 4.延迟队列->死信队列里面的消息是必须消费的,消费的时候去判断状态,未支付的话 库存+1。支付的话,不做什么操作。 5.支付的话,微信是会有一个回调的,回调是会调用我们自己的系统的,去修改支付状态, 库存去真正的减1,同时还会去增加积分,发物流等等,这点涉及分布式事务的操作 6.当微信回调的时候,有可能超时,...原创 2020-12-04 10:11:17 · 672 阅读 · 0 评论 -
RabbitMq 去下订单,这么多细节你不看吗?
先来个题外话~ servlet 3.0规范 1.其实提高并发请求,就是减少tomcat线程池中,线程的执行时间,说白了就是提高利用率。而servlet 3.0就是,一个用户请求过来了,访问servlet拿到一个线程之后去处理了业务逻辑,这时候业务逻辑块开启了 一个新的线程去处理自己的业务逻辑,处理完之后,在此调用 servlet.虽说次数增多了,但是两次时间都是比较短,整体的并发量也就上去了。 rabbitMQ 下订单 1.有两种模式,一种是推,一种是拉,默认是推,拉是,消息执行完主动去拉,...原创 2020-12-02 19:07:22 · 687 阅读 · 0 评论