首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
rabbitmq
订阅
joachiming
更多收藏集
微信扫码分享
微信
新浪微博
QQ
16篇文章 · 0订阅
RabbitMQ使用教程(五)如何保证队列里的消息99.99%被消费?
1. 前情回顾 截止目前,我们能够保证消息成功地被生产者发送到RabbitMQ服务器,也能保证RabbitMQ服务器发生异常(重启,宕机等)后消息不会丢失,也许你认为现在消息应该很安全了吧?其实还不够安全,不信你接着往下看。 2. 本篇概要 其实,还有1种场景需要考虑:当消费者…
互联网面试必杀:如何保证消息中间件全链路数据100%不丢失(1)【石杉的架构笔记】
这篇文章,我们来聊聊在线上生产环境使用消息中间件技术的时候,从前到后的全链路到底如何保证数据不能丢失。 这个问题,在互联网公司面试的时候高频出现,而且也是非常现实的生产环境问题。 如果你的简历中写了自己熟悉MQ技术(RabbitMQ、RocketMQ、Kafka),而且在项目里…
RocketMQ 在使用上的一些排坑和优化
RocketMQ 在我们的项目中使用非常广泛,在使用的过程中,也遇到了很多的问题。比如没有多环境的隔离,在多个版本同时开发送测的情况下,互相干扰严重。RocketMQ 的投递可能会失败,导致丢失消息。另外开源版本的 RocketMQ 不支持任意时间精度的延时消息,仅支持特定的 …
为什么要使用MQ消息中间件?这3个点让你彻底明白!
一个用消息队列的人,不知道为啥用,有点尴尬。没有复习这点,很容易被问蒙,然后就开始胡扯了。 将消息写入消息队列,需要消息的系统自己从消息队列中订阅,从而系统A不需要做任何修改。 一些非必要的业务逻辑以同步的方式运行,太耗费时间。 系统A慢慢的按照数据库能处理的并发量,从消息队列…
赶快看看Java11,不然你就out了!
这个是个人博客原文的链接。Java更新的太快了,都学不过来了,最近了解一些Java8以后的一些特性,写下来希望对大家有帮助。 容器环境支持,GC等领域的增强。 进行了瘦身,更轻量级,安装包体积小。 JDK11 是一个长期支持版。 由于直接从Java8跨越到Java11,所以特性…
消息中间件——RabbitMQ(十)RabbitMQ整合SpringBoot实战!(全)
1. SpringBoot整合配置详解 2. 代码演示 这是由于我们在测试方法中进行测试,当测试方法结束,rabbitmq相关的资源也就关闭了,虽然我们的消息发送出去,但异步的ConfirmCallback却由于资源关闭而出现了上面的问题。 加入Thread.sleep()即可…
Sharding-JDBC教程:Spring Boot整合Sharding-JDBC实现读写分离
Sharding-JDBC是的分布式数据库中间件解决方案。Sharding-JDBC、Sharding-Proxy和Sharding-Sidecar(计划中)是3款相互独立的产品,共同 组成了ShardingSphere。Sharding-JDBC定位于轻量级的Java框架,它…
面试官:如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?
其实这是很常见的一个问题,这俩问题基本可以连起来问。既然是消费消息,那肯定要考虑会不会重复消费?能不能避免重复消费?或者重复消费了也别造成系统异常可以吗?这个是 MQ 领域的基本问题,其实本质上还是问你使用消息队列如何保证幂等性,这个是你架构里要考虑的一个问题。 回答这个问题,…
Spring Cloud Stream 使用延迟消息实现定时任务(RabbitMQ)
我们在使用一些开源调度系统(比如:elastic-job等)的时候,对于任务的执行时间通常都是有规律性的,可能是每隔半小时执行一次,或者每天凌晨一点执行一次。然而实际业务中还存在另外一种定时任务,它可能需要一些触发条件才开始定时,比如:编写博文时候,设置2小时之后发送。对于这些…
【Java进阶面试系列之二】:哥们,那你说说系统架构引入消息中间件有什么缺点?
上篇文章「Java进阶面试系列之一」你们系统架构中为何要引入消息中间件?,给大家讲了讲消息中间件引入系统架构的作用,主要是解决哪些问题的。 首先是你的系统整体可用性绝对会降低,给你举个例子,我们就拿之前的一幅图来说明。 比如说一个核心链路里面,系统A -> 系统B -> 系统C…