自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(156)
  • 资源 (2)
  • 收藏
  • 关注

原创 微服务架构 | 优雅停机 - [完整方案]

【代码】微服务架构 | 优雅停机 - [完整方案]

2024-04-03 14:46:12 104

原创 数据库 | Mysql - [binlog]

Mysql server 的日志文件自动开启。

2024-03-17 17:05:43 212

原创 基础 | 并发编程 - [线程状态]

【代码】基础 | 并发编程 - [线程状态]

2024-03-13 22:04:52 217

原创 中间件 | Kafka - [常见问题]

【代码】中间件 | Kafka - [消息丢失]

2024-03-13 19:04:24 352

原创 中间件 | RabbitMq - [AMQP 模型]

AMQP,即高级消息队列协议(Advanced Message Queuing Protocol),整体架构如下图。

2024-03-12 22:30:41 543

原创 中间件 | RPC - [Dubbo]

Dubbo 的服务导出机制,其实就是从服务启动到注册到注册中心的过程,在。spi 是 JDK 已经实现了的规范,Dubbo 独立实现了一套。当不配置时,若 provider 无可用节点会报。Dubbo 2.7.6 开始,支持 3 种注册方式。同接口有多个版本需要兼容,消费者只会调用同组提供者。与之相对的,Dubbo 的订阅方式也有 3 种。同接口多实现配置,消费者只会调用同组提供者。其目的在于在多实现接口中仅实例化需要的实现。有详细解释(放心看,中文的)Spring 启动后发送的。

2024-03-12 19:48:26 1049

原创 微服务架构 | 服务稳定性治理

常用工具常用限流算法

2024-03-11 21:30:19 141

原创 微服务架构 | 架构演进

完整项目拆分为多个服务,所有服务均集群部署。完整部署 n 份项目,前面加负载均衡。

2024-03-11 12:59:05 246

原创 基础 | JVM - [指令 & 性能监控]

JDK 的指令是指类似下面的指令。如下图,红框即进程号。常使用此指令排查死锁。jstack 进程号。

2024-03-10 14:08:17 294

原创 基础 | JVM - [JVM 调优]

但是,按传统线程估算方式,最大不过 2N,且线程过多后切换线程上下文的开销也很客观,因此如无特殊需要不去调整。GC 是为了收拾 JVM 干活过程中产生的垃圾,那么当然 JVM 可用的空间越小越需要频繁的收拾。:最小堆内存(初始值),需要和最大内存保持一致,否则可能刚启动 JVM 就频繁 Full GC 扩容,极端情况下堆可能不能扩展到最大值。,目前已经开辟为 region 的内存,使用多少比例后触发开辟新的 region。:使用多少比例后开始 CMS 收集,默认 2/3,需要在实际环境中根据现象调整。

2024-03-10 13:43:17 546

原创 中间件 | Redis - [全局 hash & 渐进 rehash]

INDEX§1 全局 hash 表§2 渐进式 rehash§1 全局 hash 表全局 hash 是 redis 管理所有 key 的方式就好像 mysql 中,所有数据库表、字段的信息依然存在表中redis 中所有 key 的信息都存在一个全局的 hash 中§2 渐进式 rehash传统 rehash 有什么问题传统 rehash 是买断式的,触发 rehash 后,需要在连续的时间内完成hash 的扩容所有现存 entry 的 rehash这种方式并不适用于 redisr

2024-03-08 21:04:14 429

原创 微服务架构 | nacos - [Distro 协议 & 注册中心]

Distro 协议具体实现。Distro 协议入口。

2024-03-08 14:21:08 305 2

原创 中间件 | Redis - [big-key & hot-key]

一般情况下,使用频率较低,使用方式正确的 big-key 是允许存在的,只会影响内存使用情况,导致不均匀。可以查看某个key是不是 big-key,主要是查看此 key value序列化之后的长度。可以找生成一个 big-key 分析摘要输出如下信息。

2024-03-07 21:23:16 382

原创 微服务架构 | 性能优化 - [核心思路] TBC...

Round Trip Time,往返时间,通常指数据在网络传输上消耗的时间。:并发操作导致的性能损耗,比如高并发下 cas 导致的性能浪费。:通常是指随机 IO 带来的性能损耗。

2024-03-07 18:56:03 188 1

原创 中间件 | Redis - [基本信息]

而 redis,本身也可以作为分布式事务数据的持久化容器,这是因为大部分分布式事务的处理过程中,最终分布式事务数据是要被物理删除的。分布式事务中,核心的技术难点其实是分布式事务这个事本身作为数据的持久化。最常见用法,需要注意分布式锁的redis需要单点。并发量较低、业务模型比较简单的分布式系统中可用。计数器、排行榜、统计、开关标记集。

2024-03-07 18:43:22 413

原创 微服务架构 | 实战常见数据

≥nodeCountTPS∗TP∗1.2​。

2024-03-07 18:02:57 374

原创 基础 | 安全 - [加密]

将消息经过摘要算法得到一个字符串,即数据指纹一般是 hash 算法得到一个固定长度的 hash 串,无论报文长度,此串长度固定更改任意一点报文后,得到的 hash 串的内容一般都会有很大的差别上述过程是不可逆的(但可以通过暴力映射,所谓的破解一部分)如果传输前后,数据指纹不一致,说明传输后得到的内容和期望的不同可能是数据在网络传输的过程中出现了错误可能是数据在网络传输的过程中被拦截并被伪造优点:简单,可以保证传输前后数据一致(但注意这里的传输只是保证了网络传输本身)缺点。

2024-03-07 17:36:05 1258

原创 基础 | 网络 - [网络模型]

OSI(Open System Interconnect),即开放系统互联模型,就是我们说的。TCP/IP,就是我们说的。,是对七层模型的封装简化。

2024-03-07 15:35:00 832

原创 微服务架构 | 多级缓存

通用设计思路如下图内容分发网络(CDN)可以理解为一些服务器的副本,这些副本服务器可以广泛的部署在服务器提供服务的区域内,并存有服务器中的一些数据。用户访问原始服务器时,其中的静态资源(比如banner图片、图标、js脚本、css文件、静态页面等)会由 CDN 分发到距离用户较近的副本服务器上并返回对应内容,加速访问效率原始请求经过 CDN 后,会自动按请求内容分发至距离合适的副本服务器或原始服务器OpenRestyOpenResty,附官网。

2024-03-05 19:09:15 804 1

原创 微服务架构 | 数据同步策略

同时写入需要同步的所有数据,比如同时写数据库和缓存,但需要保证所有写入必须同时成功或失败。常用于缓存,设置缓存数据的有效期,到期后按其淘汰策略删除,再次使用时重写加载。双删可以防止删缓存与写数据库之间发生读操作,导致读到脏数据。写入数据后,通过mq等异步方式通知需要同步的数据侧。常用于缓存,删除缓存,写数据库,等待,再删除缓存。通常在项目实践中多种数据同步按场景不同同时使用的。常见于跨服务数据同步,或binlog监听。

2024-03-05 18:58:18 272

原创 微服务架构 | Spring - [启动]

实际使用中,只推荐使用。

2024-03-04 23:53:44 259

原创 基础 | 并发编程 - [优雅的处理线程池异常]

问题的关键在于用线程池的行为代替线程池中任务的行为。

2024-01-07 15:27:27 333

原创 DDD | 入门 - [概念体系]

这里需要注意一个误区,领域是你公司进行整体的业务或其一部分,而不是你正在开发(或者既存)的项目中业务的一部分。这会导致很多开发人员认为自己目前项目中的一个模块就对应 DDD 中的一个领域,而事实上并不是,可能你的项目整体上只是你所在部门的一个领域,甚至你所在公司整体业务中划分出来的众多领域中的一个。而开发一个混沌的东西的前提是我们需要先能准确的描述它,在 DDD 的核心思路里,开发是一个以领域业务专家为核心,专家、需求提出人、研发人员一起协作的集体行为,因此这要求我们可以准确并且统一的描述目前混沌的部分。

2023-12-18 17:55:33 321

原创 微服务架构 | 超时管理

微服务架构 | 超时管理

2023-10-16 18:09:03 444

原创 一种看待 8 种基础数据结构的视角

那么数据之间的关联关系是怎么衍化的呢?我们可以这样看待数据结构:数据结构的本质是数据之间的关联关系。这是一件必然的事,否则不会出现刚刚提到的 8 中基础数据结构。,以这种关联关系为基础的数据结构,即数组,最初的数据结构。然后,我们可以这样认为:数据之间的关联关系是可以衍化的。最原始的关联关系只有一种,即。从数组开始,我们开始。

2023-08-22 14:34:53 136

原创 基础 | 日志 | 体系介绍

基础 | 日志 | 体系介绍

2023-07-20 18:03:30 295

原创 设计 | 未验证 | 限时独活worker

设计 | 未验证 | 限时独活worker

2023-02-19 20:15:20 121 1

原创 中间件 | Kafka - [指令]

中间件 | Kafka - [指令]

2022-11-06 17:49:02 711

原创 中间件 | Kafka - [安装 & 配置 & 启动]

中间件 | Kafka - [安装 & 配置 & 启动]

2022-11-05 22:07:42 679

原创 中间件 | Kafka - [基本信息]

中间件 | Kafka - [基本信息]

2022-11-05 13:49:15 654

原创 算法 | 基础 - [常见问题]

算法 | 基础 - [常见问题]

2022-10-26 16:26:48 378

原创 数据库 | Mysql - [SQL 执行顺序 & 优化]

数据库 | Mysql - [SQL 执行顺序 & 优化]

2022-10-22 21:12:49 446

原创 数据库 | Mysql - [索引]

数据库 | Mysql - [索引]

2022-10-22 18:41:17 331

原创 数据库 | Mysql - [自定义函数 & 存储过程]

数据库 | Mysql - [自定义函数 & 存储过程]

2022-10-22 15:45:58 126

原创 数据库 | Mysql - [逻辑架构 & 存储引擎]

数据库 | Mysql - [逻辑架构 & 存储引擎]

2022-10-22 12:59:03 749

原创 数据库 | Mysql - [事务]

数据库 | Mysql - [事务]

2022-10-21 22:16:31 222

原创 并发编程 | Netty - [出站、入站机制]

并发编程 | Netty - [出站、入站机制]

2022-10-16 17:23:06 699 1

原创 并发编程 | Netty - [编解码器]

并发编程 | Netty - [编解码器]

2022-10-16 17:22:46 141

原创 序列化 | ProtoBuf - [简介 & 使用]

序列化 | ProtoBuf - [简介 & 使用]

2022-10-16 14:19:39 327

原创 并发编程 | Netty - [常用预设 Handler]

并发编程 | Netty - [常用预设 Handler]

2022-10-14 16:04:28 520

spring 学习笔记

学习时自己整理的笔记,涉及spring的较多内容可以用来作为速查手册使用 建议使用EditPlus打开

2015-04-07

matlab 安装教程 2012a

详细的matlab2012a版安装教程,详细至每一步

2012-05-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除