RocketMQ死信队列

一、RocketMQ死信队列概述 RocketMQ是一个高性能、可靠性、可扩展性 broker 致力于处理大量数据,包括流式数据和批量数据,并且能够实现在线扩容。RocketMQ支持死信队列(Dead Letter Queue,DLQ),可以将无法被使用者消费的消息转发到指定的 topic 或者 queue 中去,死信队列就是为了解决这些问题而生的。…

hello hello 发布于 2024-01-08

如何造一个“钉钉”?谈谈消息系统架构的实现

梗概 生活中最常见的即时聊天类软件如:钉钉、微信等,都可以描述为:实现了即时通讯能力的聊天工具。其中聊天会话可分为两大类,分别是:单聊、群聊(公众号类似单聊)。这里我们以钉钉(Ding…

hello hello 发布于 2024-01-08

工程师的灵魂拷问:你的密钥安全吗?

背景介绍:密钥管理 提问:你密钥存在哪儿? 对这一问的回答基本可概括为2类: a. 本地加解密: 密钥保存在某些介质(如配置文件、数据库,也可以是某个远程服务器)中,用户在需要进行加密/签名时,从这些介质拉取密钥(可能拉取的只是密钥密文,需要再解密出密钥明文),然后本地进行加密/签名。 b. 服务器加解密:…

hello hello 发布于 2024-01-08

用Spring Boot 3.2虚拟线程搭建静态文件服务器有多快?

Spring Boot 3.2 于 2023 年 11 月大张旗鼓地发布,标志着 Java 开发领域的一个关键时刻。这一突破性的版本引入了一系列革命性的功能,包括: 虚拟线程:利用 Project Loom 的虚拟线程释放可扩展性,从而减少资源消耗并增强并发性。 Native Image支持:通过Native…

hello hello 发布于 2024-01-05

SpringBoot整合RocketMQ

0 . 启动Name Server与 Broker 1 . 引入依赖 添加 RocketMQ 客户端访问支持,具体版本和安装的 RocketMQ 版本一致即可。 <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId>…

hello hello 发布于 2024-01-05

如何避免新代码变包袱?阿里通用方法来了!

前言 即使代码多年的人都会对这两个问题有点蒙圈:什么是设计?什么是架构? 从单词上看:设计是Software Design,架构是Software Architecture;分别对应的作者是:Designer和Architect:…

hello hello 发布于 2024-01-05

无用的 VSCode Extensions

不罗嗦,直接开始 Pretty Typescript Errors CodeSnap BackGround Markdown Preview Mermaid Support Draw.io indent-rainbow 1. Pretty Typescript Errors 好看的 TypeScript…

hello hello 发布于 2024-01-05

RocketMQ顺序消息

顺序类型 无序消息 无序消息也指普通的消息,Producer 只管发送消息,Consumer 只管接收消息,至于消息和消息之间的顺序并没有保证。 Producer 依次发送 orderId 为 1、2、3 的消息 Consumer 接到的消息顺序有可能是 1、2、3,也有可能是 2、1、3 等情况,这就是普通消息。 全局顺序 对于指定的一个 Topic…

hello hello 发布于 2024-01-05

云服务OpenAPI的7大挑战,架构师如何应对?

为什么要有API规范 之所以强调“云服务”的原因在于,小规模独立API的设计与大规模批量生产API面临的问题是不一样的。同样,只专注于自身产品API的可用性与从更高的层次去看云服务整体API体系的健壮性,要建设的体系也是不一样的。…

hello hello 发布于 2024-01-05

Mybatis Plus的条件构造器 QueryWrapper & UpdateWrapper

简介 前面我们在学习 Java Spring Boot Mybatis-Plus 的简单使用的时候,是否发现我们在构造查询的时候,基本都是简单的 where 语句的查询,而且也不能去选择字段输出,没关系,Mybatis-Plus 为我们准备了应对方案,那就是 Wrapper 构造器。 总的来说,常用的条件构造器有两类,一类是用于查询的条件构造器-…

hello hello 发布于 2024-01-05
上一页 下一页