自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 常见的字符编码

【代码】常见的字符编码。

2024-12-19 12:11:38 689

原创 Redis字符串SDS

SDS 设计提供了更多的功能和安全性,以满足 Redis 高效处理字符串数据的需求。等,提供了比传统 C 字符串更安全、更灵活的功能,保证了 Redis 的高性能和稳定性。在 Redis 中,字符串(String)是最基本的数据类型之一。Redis 内部使用。来实现字符串数据结构,而不是 C 语言中的传统。SDS 在 Redis 中广泛用于存储。

2024-11-27 22:33:29 438

原创 Redis中的String类型深入理解

是最基础和常用的数据类型,但其底层实现并不局限于一种固定结构。根据字符串的长度和内容,Redis 会使用不同的数据结构来优化性能和内存利用率。一旦字符串内容发生变化(如转换为非整数),Redis 会将其转换回 SDS。SDS 是 Redis 字符串类型的主要底层实现。GET key # Redis 内部将 "100" 存储为整数。的增强,解决了传统 C 字符串的一些问题(如。),且长度较短时,Redis 会将其存储为。终止、长度获取复杂等)。(通常小于 44 字节)。

2024-11-27 22:29:54 423

原创 Redis hash类型底层数据结构

Redis 会根据哈希类型的元素数量和长度动态选择ziplist或hashtable。

2024-11-27 20:33:30 144

原创 RocketMq源码分析用到的设计模式

定义消息发送的整体流程,允许子类在不改变结构的情况下重写特定步骤。根据不同的消费模式(顺序或并发)选择不同的处理策略。创建不同类型的生产者实例,隐藏对象创建的复杂性。为发送消息提供代理,控制对实际发送逻辑的访问。确保 Producer 的客户端实例全局唯一。消费者订阅主题,当有新消息时触发回调处理。将消息消费的多个步骤串联起来,按顺序处理。动态选择消息发送策略(如消息队列选择)。根据不同的状态切换不同的消费行为。方法实际上是通过代理调用。

2024-11-27 12:14:07 432

原创 MMAP详解 && RocketMQ和Redis为什么使用MMAP

1. 什么是 mmap?是一种将文件或设备映射到进程的地址空间的方法。通过 mmap,应用程序可以像操作内存一样访问文件内容,而不需要使用传统的 I/O 读写系统调用。几乎所有现代操作系统(如 Linux、Windows)都提供 mmap 支持。用于处理大文件、高效读取日志、数据库设计等。

2024-11-27 12:00:44 375

原创 一口气给你肝完什么是CAP理论

所有节点访问同一份数据时,返回的结果是相同的,即数据保持一致。系统的数据存储在这两个节点上。每个请求(非故障节点)都能获得响应,无论是否成功。系统能够继续运行,即使网络中存在。你有一个简单的分布式系统,由。

2024-11-27 11:45:22 752

原创 Spring AbstractRoutingDataSource 不生效原因

通过 AbstractRoutingDataSource 和 ThreadLocal 切换动态切换数据源,一个是 原始数据源 另外一个是Sharding JDBC数据源。 至于为什么这么做是因为 如果全部都是使用 Sharding JDBC数据源会影响其他没有分表的sql。问题:AbstractRoutingDataSource的determineCurrentLookupKey方法没有被调用,理论上来说没执行一次sql都会执行determineCurrentLookupKey方法,但是奇怪的是没有执行。

2021-11-18 09:55:33 3653 2

原创 sharding jdbc 配置报错

spring boot 集成 sharding jdbc 报错 No qualifying bean of type ‘javax.sql.DataSource’ available: expected single matching bean but found 2: creditDataSourceMySQL,shardingDataSourcecreditDataSourceMySQL:是我自己配置的数据源。shardingDataSource:是sharding jdbc创建的数据源。异常说:

2021-11-14 15:59:23 2649

原创 sharding jdbc 策略失效原因

配置了一个策略,debug没有进入这代码里。原因:sharding jdbc不支持一些sql,就不会进入。我的sql为:正确写法为:

2021-11-14 15:47:06 3064

原创 There is no PasswordEncoder mapped for the id “null“ 异常

这种异常百度一下一大把,但是还是没解决我这问题,那么只能看源码自己分析了,所以记录一下。原因:往spring注入了2个PasswordEncoder接口实现类,导致spring不知道取哪个。解决问题思路:1、首先定位这个异常在源码的哪个地方。2、然后通过debug方式,查找从哪里进来的,我自定义实现了PasswordEncoder接口,为什么不走我自定义的matches方法,而是走PasswordEncoder接口的DelegatingPasswordEncoder实现类?那么只能继续

2021-07-17 16:29:25 375 1

原创 Dobbo配置及优先级

Dubbo配置详解Dubbo提供了多种灵活的配置,接下来我们一一介绍Dobbo配置使用。配置方式介绍XML文件配置可以在resource目录下配置provider.xml和consumer.xml文件。属性配置Dubbo可以自动加载classpath根目录下的dubbo.propertiesAPI配置Dubbo也支持面向对象配置,通过类设置属性的方式值得注意的是,不管是以哪种方式配置Dobbo都会调用 service.export()方法。只不过API配置是需要显示的调用,其他配置都

2020-06-14 01:50:25 504

空空如也

空空如也

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

TA关注的人

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