摘要: 并不是所有的场景都适合微服务,我理解技术开发者都有一颗追求新技术的心,但是更重要的是业务场景及团队。 关于微服务 微服务架构,说白了就是一种上层体系的演变。从最早的单体架构,到前后分离,SOA,甚至微服务架构,其实它们都在做一件事,并且都朝着一个方向去发展:那就是分而治之!从简! 分而治之有什么好处 阅读全文
posted @ 2023-04-16 15:41 青柠_fisher 阅读(237) 评论(0) 推荐(1)
摘要: JVM调优,其实就是调整SWT和FGC的过程 JVM内存模型 通过一张基础的图了解最简单的JVM模型: 其实在jvm模型中,主要包含了我们常见的堆栈方法区等待--每个版本不同可能解释有所不同,这里默认以8版本为例: 首先给出官方文档的解释: https://docs.oracle.com/javas 阅读全文
posted @ 2023-04-05 21:38 青柠_fisher 阅读(329) 评论(0) 推荐(0)
摘要: 通过juc下LockSupport,可以达到阻塞和唤醒线程的操作 线程信号 线程之间是需要通信的。 线程间的通信可以有很多种方式,比如线程调度、令牌许可.... 常见的线程通信方式,类似阻塞,调度,唤醒。通过并发编程中我看到了这样的一段描述,在开头补充出来: 首先,是对于常用的wait和notify 阅读全文
posted @ 2023-04-02 23:24 青柠_fisher 阅读(105) 评论(0) 推荐(0)
摘要: aqs,它是抽象队列同步器AbstractQueuedSynchronizer ,是juc包下的核心组件。 关于aqs aqs,是AbstractQueuedSynchronizer 的简称,位于juc包下。在jdk1.5后,提供了针对并发处理的一些工具。 通过aqs,其实它提供了实现锁和线程同步机 阅读全文
posted @ 2023-04-02 22:09 青柠_fisher 阅读(134) 评论(0) 推荐(0)
摘要: 关于producer到comsuner全流程,可以参考文章:【打怪升级】【rocketMq】如何保证消息顺序消费 在rocket4.X版本中,其实所有的生产者都是client,对应的其实就是MQProducer具体的实现,主要分为DefaultMQProducer和TransactionMQProd 阅读全文
posted @ 2023-03-22 22:26 青柠_fisher 阅读(176) 评论(0) 推荐(0)
摘要: rocket持久化保证的思想有两点:1是刷盘保证大部分数据不丢失;2是持久化文件的处理,零拷贝技术和内存页,NIO模型保证处理能力 文件持久化目录 ├──abort:rocket broker启动检查的文件,正常启动会写入一个abort,正常退出会删除abort,通过它来判断上一次是否异常退出 ├─ 阅读全文
posted @ 2023-03-13 22:04 青柠_fisher 阅读(799) 评论(0) 推荐(0)
摘要: 遇到消息积压,如何处理? 什么是消息积压 消费积压是一个很直接的概念,看图: 当某一批对应的消息,生产者生产的速度大于消费者消费的速度时,就会发生消息积压。因为靠目前的消费者永远无法消费完生产的消息。 如何处理消息积压 由上图,可以看出要想让生产消费者保持一个能力的水平,有这么几点: 生产者消费过快 阅读全文
posted @ 2023-03-08 15:45 青柠_fisher 阅读(535) 评论(0) 推荐(0)
摘要: rocket针对有业务顺序的消息如何保证消息的顺序呢 RocketMq的消费模型 说到顺序,我们先观察rocket的消费模型: 首先,producer group创建消息,并指定tag、key、messageBody对消息体进行组装 private String topic; 消息主题 privat 阅读全文
posted @ 2023-03-08 15:45 青柠_fisher 阅读(311) 评论(0) 推荐(0)
摘要: rocket存在重复消费吗?rocket怎么帮我们避免重复消费? 如何算重复消费 rocket本身其实有一部分思想建立在 at-least-once 基础上,rocket保证了生产者发送的消息,根据持久化刷盘和其他机制保证消息不丢失,消息不丢失请参考 https://chuna2.787528.xyz/ 阅读全文
posted @ 2023-03-08 15:45 青柠_fisher 阅读(940) 评论(0) 推荐(1)
摘要: 上面一篇文章中介绍了RocketMq的基本架构以及组件的能力。那么在RocketMq中,如何做到消息零丢失呢? RocketMq哪些地方会丢失消息? 扒拉出上一节的MQ消息消费的流程模型如下: 分布式消息,数据丢失的最常见的地方是网络!由此得知: 1.生产者发送至mq时存在消息丢失。 2.消费者消费 阅读全文
posted @ 2023-03-08 15:44 青柠_fisher 阅读(336) 评论(0) 推荐(0)