内容栏目
后端与中间件
RocketMQ / Redis / MySQL / Kubernetes / ElasticSearch / Dubbo
本栏目共 50 篇,含 6 个系列。全文免费,增值资料包在公众号发放。
所属系列
Redis 系列
14 篇 →
MySQL 系列
6 篇 →
ElasticSearch 系列
5 篇 →
RocketMQ 系列
16 篇 →
Dubbo 系列
3 篇 →
Kubernetes 系列
6 篇 →
全部文章
MySQL 日志系统 - binLog
前言 MySQL手册-binary Log 简介 binLog 日志系统是由一组二进制文件和一个索引文件组成。 binLog 全称是 binary log ,即为二进制日志文件。 …
05.体系架构
本篇文章是我们【深入一点点】部分第一篇文章,既然我们要“深入一点点”,那么就剥开MySQL的外衣~ 先看看MySQL的各个“部位”。 整体来说,MySQL体系整体分为客户端连接器,…
04.连接到服务端
同学, MySQL 数据库,一般指的 MySQL 服务端。但是 MySQL 自己呢也有一个客户端。就是我们使用 mysql 在 shell 窗口中连接数据库时,其实这就是以一个客户…
02.安装MySQL
官网上有很多种安装方式: https://dev.mysql.com/doc/refman/8.0/en/installing.html 这里我们选择一种比较清晰和简单的安装方式进…
k8s 监控神器 kuboard
Kubernetes 容器编排已越来越被大家关注,然而学习 Kubernetes 的门槛却依然很高,主要体现在这几个方面: 集群的安装复杂 Kubernetes 相较于容器,引入了…
k8s-Service
服务(Service) 解决的问题 Pod 是非永久性资源。 如果你使用 Deployment 来运行你的应用程序,则它可以动态创建和销毁 Pod。 每个 Pod 都有自己的 IP…
k8s-资源控制器
Pod Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。 Pod 是一组容器, 一个 pod 的所有容器共享 pod 的网路,存储 以及运行容器的声…
k8s-Pod的生命周期
K8s 中所有的内容都抽象为资源,资源实例化为对象。 集群资源的分类 名称空间级别 工作负载型资源( workload ): Pod 、 ReplicaSet 、 Deployme…
k8s-incompatible CNI versions
报错内容 部署的环境 解决问题 这个问题的主要内容是: incompatible CNI versions . 当你去网上去搜索解决方案大都是 说 使用 containerd 的版…
k8s-搭建K8s集群
使用 kubeadm 1.24.3 搭建 k8s 集群 环境准备 Centos8 三台. 注意, 这三台机器不要做任何配置,尤其不要安装 docker , 因为从 k8s 1.20…
RocketMQ 消息刷盘过程详解
在 RocketMQ架构设计之消息 这篇文章中, 我们学习了 消息发送到消费 的整体流程。这篇文章,我们一起来看看 MappedFile 的实现细节. 引言 我们都知道的是 Roc…
RocketMQ 消息可靠性实现原理
常用的绝大多数消息队列,如 RocketMQ 、 RabbitMQ 等在消息传输上都只能保证 至少传输成功一次( At least once ) , 但是 不能保证只传输成功一次(…
RocketMQ事务实现原理
最近有点浮躁,玩了一个周, 没有写文章了。今天继续搞 RocketMQ 的事务实现。 往期文章 RocketMQ搭建 RocketMQ架构设计之启动 RocketMQ架构设计之消息…
Dubbo 与 Springboot 集成
本文使用技术介绍 Dubbo 3.0.3 Springboot 2.5.5 文中代码已删减,具体代码位置见文末。 本文目标 快速构建 Springboot 应用,并继承 Dubbo…
最简版 springboot 集成 dubbo
本文使用技术介绍 Dubbo 3.0.3 Springboot 2.5.5 文中代码已删减,具体代码位置见文末。 本文目标 快速构建 Springboot 应用,并集成 Dubbo…
搭建第一个纯dubbo微服务应用
本文旨在快速搭建一个 纯dubbo微服务 应用。 创建一个项目 consumer 表示一个消费者。 provider 标识一个服务提供者。 provider-api 表示对外提供服…
RocketMQ系列-架构设计之启动
之前我们已经学习了 RocketMQ 是由四个部分组成的。这篇文章更加深入的来看看这个四个部分。 NameServer 接下来,我们来看 NameServer 的相关内容,我们都知…
RocketMQ系列-架构设计之消息
上一篇文章RocketMQ架构设计之启动过程解析 分析了 NameServer , Broker , Producer , Consumer 四个部分的启动过程, 这边文章我们分析…
RocketMQ样例:事务消息
事务消息共有三种状态,提交状态、回滚状态、中间状态: TransactionStatus.CommitTransaction : 提交事务,它允许消费者消费此消息。 Transac…
RocketMQ样例:过滤消息
在大多数情况下, TAG 是一个简单而有用的设计,其可以来选择您想要的消息。例如: 消费者将接收包含 TAGA 或 TAGB 或 TAGC 的消息。但是限制是一个消息只能有一个标签…
RocketMQ样例:批量消息
批量消息样例 批量发送消息能显著提高传递小消息的性能。限制是这些批量消息应该有相同的 topic ,相同的 waitStoreMsgOK ,而且不能是延时消息。此外,这一批消息的总…
RocketMQ样例:延时消息
启动消费者等待传入订阅消息 发送延时消息 验证 您将会看到消息的消费比存储时间晚 10 秒。 延时消息的使用场景 比如电商里,提交了一个订单就可以发送一个延时消息, 1h 后去检查…
RocketMQ样例:全局顺序消息
消息有序指的是可以按照消息的发送顺序来消费( FIFO )。 RocketMQ 可以严格的保证消息有序,可以分为分区有序或者全局有序。 顺序消费的原理解析: 在默认的情况下消息发送…
RocketMQ样例:基本的消息生产和消费
首先我们来学习一个简单的消费生产和消费的 demo . 生产消息 RocketMQ , 给我们提供了三种简单的消息生产方式, 1.同步发送 , 2.异步发送 , 3.直接发送,不关…
RocketMQ系列-在Java应用中的使用
上一篇文章中我们成功地搭建了几种RocketMQ的部署方式。 这篇文章,我们就来看一下RocketMQ所支持的消息类型在Java应用中的使用。 加入依赖 在上一篇文章中,我们已经使…
RocketMQ系列-搭建RocketMQ集群
搭建RocketMQ集群 根据之前的了解,我们已经知道了RocketMQ可以单机部署,支持集群部署。 RocketMQ 支持以下集中部署方式 1.单Master模式部署 , 2.多…
RocketMQ系列-RocketMQ概念
RocketMQ概念 我在学习 RocketMQ 的时候,看到文档中介绍了很多的概念。我非常反感,但是又没有办法,没有这些概念,就没办法更好的去学习后面的内容,当后面使用很多名词来…
RocketMQ系列-开篇
开篇 写这篇文章的时间是 2021 年 9 月 1 日,不知道是否有勇气写完全部系列之后再发布给大家,这只能算是自己学习 RocketMQ 的笔记吧。希望在2021年的年底能够将整…
Rocket系列-入门
RocketMQ 介绍 截止 2021 年 9 月 1 日, RocketMQ 最新版本是 4.9.1 。 最新 Star 数为 1.5w . fork 数量是 8.4k . 发展…
ES栈安装
安装 ElasticSearch 7.10.1 下载安装包 我们在 es 的官网上可以找到ES软件的下载地址,我放到下面: LINUX : elasticsearch-7.10.1…
Elastic Search 目录
搜索之ES系列 本系列基于版本7.10 目录 [x] ES简介 [x] ES发展历史 [x] ES的生态圈 [x] ES的应用场景 [x] 使用架构 [x] ES栈安装 [x] E…
Elastic Search简介
Elasticsearch简介 Elasticsearch 是一个开源的分布式 RESTful 搜索 和 分析 引擎,能够解决越来越多不同的应用场景。 Elasticsearch …
Elastic Search配置
Elastic Search配置 ES 提供了很多默认的参数设置,使我们不用添加任何参数就可以成功的启动 ES 。 作为一个认真的学习者。我们还是来一起看看 如何更好的自定义 ES…
Elastic Search基本概念
文档 es 是面向文档的,文档是 es 中可搜索的最小单位, es 的文档由一个或多个字段组成,类似于关系型数据库中的一行记录,但 es 的文档是以 JSON 进行序列化并保存的,…
Redis中的数据结构之跳表及其原理
前言 文中附代码实现. 电梯直达 在公众号回复 【跳表】 也可以获取哦。 什么是跳表 跳表是一种数据结构。它允许快速查询一个有序连续元素的数据链表。跳跃列表的平均查找和插入时间复杂…
Redis数据结构之详解 ziplist
解密 ziplist. 为什么叫解密 ziplist 呢? 因为从ziplist中取到我们预期的值,真的和解密一样! 烧脑,但是极其有趣!! 引题 在介绍 Redis 的数据类型 …
Redis的单机部署
源码安装 下载地址 http://download.redis.io/releases/redis-5.0.7.tar.gz 安装步骤 可能出现以下错误: 启动 [root@fan…
Redis数据结构之位图 BitMap
书接上回 上一篇我们学习的 zset 集合这一数据类型。其内部是由 skiplist 和 hashtable 这种两种数据结构编码的。 如果不记得了,那就来坐穿梭机回去看看吧。 开…
Redis数据结构之有序集合 zset
书接上回 上一篇我们学习的 set 集合这一数据类型。其内部是由 inset 和 hashtable 这种两种数据结构编码的。 如果不记得了,那就来坐穿梭机回去看看吧。 开始穿梭 …
Redis 多个数据库
Redis 默认提供了 16 个数据库. 每个数据库都有一个 id , 从 0 开始, [0,15]。 不同的数据库中数据隔离保存。我们可以通过修改redis的配置文件进行修改数据…
Redis数据结构之 `HyperLogLogs`
书接上回 上一篇我们学习的 bitmap 这一 “数据类型” 。其内部是由 sds 这种种数据结构编码的。 如果不记得了,那就来坐穿梭机回去看看吧。 开始穿梭 接下来,我们继续学习…
Redis 简介
Redis 是一个开放源代码( BSD 许可)的内存中数据结构存储,用作数据库,缓存和消息代理。它支持数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图( bitM…
Redis数据结构之 List
书接上回 上一篇文章 Redis的数据结构 string 我们一起学习了这种类型的常用命令,并且还学习了 Redis 中的字符串的结构表示以及好处,这里我们接着学习另外一种数据结构…
Redis数据结构之 String
今天来聊聊 Redis 的 string ,这一数据结构。 string 简介 string 是 Redis 中最基本,也是最简单的数据结构。一个键( key ) 对应着一个 st…
Redis数据结构之 Hash
书接上回 前一篇文章,我们学习的是 Redis的数据结构 list, 学习了其基本的操作和使用内部数据结构是 quicklist 和 ziplist ,这两种数据结构虽然起得名字是…
Redis数据结构之集合 Set
书接上回 前一篇文章,我们学习的是 Redis的数据结构之hash, 学习了其基本的操作和使用内部数据结构是 hashtable 和 ziplist ,其中 Redis 中的 ha…
01.数据库版本
MySQL 数据库的版本 mysql-5.0 : mysql-5.0 版本之前, myisam 默认支持的表大小为 4G 。从 mysql-5.0 以后, MyISAM 默认支持 …
Redis 开篇杂谈
杂谈 这里说些杂谈吧。 以下的文章中, 同一个名词并非代表的是同一种对象。比如 list。 在 t list.c中,list的表示的 面向于用户的Redis数据结构List(列表)…
Redis 开篇 & 说明
本系列学习笔记以 redis5.0.7 版本为基础进行学习. 2021-07-21 Redis 6.0.6 2019-12-19 Redis 6.x 开始发布, 具体内容: Red…
00.开篇&&说明
版本说明 本系列文章,以MySQL 8.0.20版本为实验背景进行编写。 MySQL手册 最后 期望与你一起遇见更好的自己…
配套资料 · 免费领取
本文属于「BACKEND」资料包范围:中间件源码阅读路线图。按 RocketMQ / Redis / MySQL 分章节的完整路线。
在公众号「方家小白」回复关键词 BACKEND 即可领取。全文无需关注即可阅读。
BACKEND