深圳幻海软件技术有限公司 欢迎您!

  • 怎么做才能不丢消息?

    现在主流的消息队列产品都提供了非常完善的消息可靠性保证机制,可以做到在消息传递的过程中,即使发生网络中断或者硬件故障,也能确保消息的可靠传递、不丢消息。绝大部分丢消息的原因都是由于开发者不熟悉消息队列,没有正确使用和配置消息队列导致的。检测消息丢失的方法用消息队列最尴尬的情况不是丢消息,而是丢了消息

  • 怎么处理消息重发的问题?

    消息队列在消息传递的过程中,如果出现传递失败的情况,发送方会重试,在重试的过程中,可能会产生重复的消息。消息重复的情况必然存在关于传递消息时能够提供的服务质量标准,MQTT协议给出了三种不同的标准:Atmostonce:至多一次,消息在传递时,最多会被送达一次,一般适用于对消息可靠性要求不高的监控场

  • 自定义开发限流组件 之 场景需求分析

    限流,通常讲就是限制流量,也有很多其他的说法,比如:限频、疲劳度控制等。原文链接:自定义开发限流组件之场景需求分析-一只小Coder最近遇到一个需求,系统A作为一个专门推送消息给客户的消息中心系统,对于每个客户是否能接受消息,能接受多少消息,接收消息的速度,能接受哪些消息等都要进行控制,这也就引入了

  • Android进阶之Handle和Looper消息机制原理和源码分析(不走弯路)

    本文转载自微信公众号「Android开发编程」,作者Android开发编程。转载本文请联系Android开发编程公众号。前言App中一般多会有多个线程,多线程之间难免需要进行通信。在我们平时开发中线程通信用的最多的就是Handler,例如子线程进行数据处理,在主线程中进行UI更新。当然了除了Hand

  • 选Redis做MQ的人,是脑子里缺根弦儿吗?

    一、前情提示上一篇文章:​​《RocketMQ消息中间件用起来真的可靠吗?》​​,我们分析了ack机制的底层实现原理(deliverytag机制),还有消除处理失败时的nack机制如何触发消息重发。通过这个,已经让大家进一步对消费端保证数据不丢失的方案的理解更进一层了。这篇文章,我们将会对ack底层

  • 开源消息中间件RocketMQ详解系列

    什么是RocketMQRocketMQ作为一款纯java、分布式、队列模型的开源消息中间件,支持事务消息、顺序消息、批量消息、定时消息、消息回溯等。主要功能是异步解耦和流量削峰。常见的MQ主要有:ActiveMQ、RabbitMQ、Kafka、RocketMQ。四种消息中间件的基本介绍:特性Acti

  • RabbitMQ宕机后,消息100%不会丢失吗

    ​这篇文章,给不太熟悉MQ技术的同学,介绍一个生产环境中可能会遇到的问题。目前为止,你的RabbitMQ部署在线上服务器了,对吧?然后订单服务和仓储服务都可以基于RabbitMQ来收发消息,同时仓储服务宕机,不会导致消息丢失。好,我们来看下目前为止的架构图。那如果此时出现一个问题,就是说订单服务投递

  • 策略模式简洁的实现方式,你知道吗?

    ifelse太多了最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的。复制if(msgType="文本"){//dosomething}elseif(msgType="图片"){//doshomething}elseif(msgType="视频"){/

  • 五张图带你理解 RocketMQ 延时消息机制

    大家好,我是君哥。今天来聊一聊RocketMQ的延时消息是怎么实现的。延时消息是指发送到RocketMQ后不会马上被消费者拉取到,而是等待固定的时间,才能被消费者拉取到。延时消息的使用场景很多,比如电商场景下关闭超时未支付的订单,某些场景下需要在固定时间后发送提示消息。1.生产者首先看一个生产者发送

  • 一篇文章详解RocketMQ消息中间件

    消息中间件在高并发的业务场景占据了非常重要的位置,其中国内的典型代表Java实现的RocketMQ需要重点掌握。本文重点详解如下5点:1.RocketMQ的介绍2.RocketMQ的技术演进3.RocketMQ的架构设计4.RocketMQ的核心特性5.RocketMQ的应用场景RocketMQ的简

  • 消息中间件应用的常见问题与方案

    ​1.引言消息队列(MQ)中间件已经普及很多年了,在互联网应用中,通常稍大一些的应用,我们都可以见到MQ的身影。当前市面上有很多中消息中间件,包括但不限于RabbitMQ、RocketMQ、ActiveMQ、Kafka(流处理中间件)等。很多开发人员已经熟练地掌握了一个或者多个消息中间件的使用。但是

  • 图解 Kafka 生产者初始化核心流程

    从今天开始我将以「 Kafka2.7」 版本为主,通过「场景驱动」的方式带大家一点点的对Kafka源码进行深度剖析,正式开启 「Kafka的源码之旅」,跟我一起来掌握Kafka源码核心架构设计思想吧。今天这篇我们先来聊聊Kafka生产者初始化时用到的核心组件以及发送的核

  • 用API网关来替换传统的ESB总线可行性分析

    大家都清楚传统的IT架构和集成一般都采用ESB服务总线进行集成,这是一种典型的中心化架构,但是可以充分的利用ESB总线的适配,协议转换,消息拦截等能力进行各种SOA治理和管控操作。那么在传统企业IT架构转型过程中,如果需要对ESB总线进行升级改造,或者说整体IT架构本身就存在老架构和新微服务架构共存

  • 深度好文! 图解 RocketMQ 的系统架构

    今天给大家分享一篇我对学习RocketMQ系统架构核心知识点的梳理和总结,在讲解时力求精简、通俗易懂,通过图解来给正在学习RocketMQ的小伙伴带来帮助。RocketMQ是阿里巴巴的分布式消息中间件,在2012年开源,在2017年成为Apache顶级项目。1集群架构RocketMQ的集群架构如下图

  • 「Kafka技术」Apache Kafka中的事务

    在之前的一篇博客文章中,我们介绍了ApacheKafka®的一次语义。这篇文章介绍了各种消息传递语义,介绍了幂等生成器、事务和Kafka流的一次处理语义。现在,我们将继续上一节的内容,深入探讨ApacheKafka中的事务。该文档的目标是让读者熟悉有效使用ApacheKafka中的事务API所需的主

  • 阿里二面:RocketMQ同一个消费组内的消费者订阅量不同tag,会有问题吗?

    面试官:同一个消费组内的消费者,如果订阅了相同的topic,但是订阅的tag不一样,会有什么问题吗?我:会出现丢消息的情况。面试官:能详细说一说吗?我:RocketMQ要求同一个消费组内的消费者必须订阅关系一致,如果订阅关系不一致,会出现消息丢失的问题。面试官:什么是订阅关系一致呢?我:订阅关系一致

  • 从未如此简单:10分钟带你逆袭Kafka!

    【51CTO.com原创稿件】ApacheKafka是一个快速、可扩展的、高吞吐的、可容错的分布式“发布-订阅”消息系统,使用Scala与Java语言编写,能够将消息从一个端点传递到另一个端点。图片来自Pexels较之传统的消息中间件(例如ActiveMQ、RabbitMQ),Kafka具有高吞吐量

  • 从0到1设计一个MQ消息队列

    消息队列作为系统解耦,流量控制的利器,是分布式系统核心组件之一。了解消息队列背后的实现是非常重要的。今天,我们就一起来探讨设计一个消息队列背后的技术。消息队列整体设计思路主要是设计一个整体的消息被消费的数据流。这里会涉及到:消息生产Producer、Broker(消息服务端)、消息消费者Consum

  • 自己动手撸一个分布式IM(即时通讯) 系统

     之前分享过一篇《设计一个***的消息推送系统》,虽然在文中贴了一些伪代码,但是有朋友希望能直接分享一些可以运行的源码,这么久了是时候把坑填上了。于是我在之前的基础上完善了一些内容,先来看看这个项目的介绍吧:CIM(CROSS-IM)一款面向开发者的IM(即时通讯)系统,同时提供了一些组件

  • 这篇文章专治MQ中间件各种疑难杂症

    【51CTO.com原创稿件】上周分享的一篇《面试大杀器:为什么一定要用MQ中间件?》受到了大家的一致好评,今天这篇文章为大家总结下MQ应用中的一些疑难杂症。消息队列有什么优点和缺点?为什么使用消息队列?假设你的业务场景遇到个技术挑战,如果不用MQ可能会很麻烦,但是你用了MQ之后会带给你很多好处。消

推荐阅读