自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

shuai的博客

知识共享

  • 博客(250)
  • 资源 (2)
  • 收藏
  • 关注

原创 redis定期删除

本文介绍了Redis定期删除功能的配置方法及相关资源。主要内容包括:1) 提供Redis单机安装、集群搭建和大key处理的参考文档;2) 列出官方文档和下载地址,推荐使用Redis 7.0.0版本;3) 重点说明定期删除配置参数"hz"的作用,该值控制后台任务执行频率(默认10,范围1-500),影响过期键清理效率;4) 提供中文配置说明和注意事项。文中还包含相关视频教程参考链接。

2025-11-30 23:59:08 672

原创 redis大key问题-scan、hscan、sscan、zscan等命令

Redis大Key问题解决方案:SCAN系列命令详解 本文介绍了Redis中处理大Key问题的SCAN系列命令,包括SCAN、HSCAN、SSCAN和ZSCAN。这些命令通过游标迭代方式,避免像KEYS命令那样阻塞服务器。文档详细说明了SCAN命令的基本语法、参数含义和使用示例,特别介绍了HSCAN在Redis 7.4新增的NOVALUES参数。通过实际示例展示了如何扫描特定前缀的key和hash类型字段,强调COUNT参数仅作为提示值而非精确返回数量。文章还提供了相关官方文档和测试数据生成方法的参考链接。

2025-11-30 21:21:56 1088

原创 redis禁用keys、flushdb、flushall等命令

Redis禁用高危命令指南:通过修改redis.conf配置文件,可以禁用KEYS、FLUSHDB、FLUSHALL等危险命令。推荐使用rename-command将这些命令重命名为空字符串(如rename-command KEYS ""),以防止生产环境中误操作导致数据丢失或服务阻塞。文档还提供了SCAN命令作为KEYS的安全替代方案,并指出命令重命名方式已弃用,建议改用ACL权限控制。禁用命令后若AOF文件包含相关指令可能导致启动失败,需手动清理AOF文件中的对应命令。

2025-11-30 21:18:31 814

原创 redis惰性删除与异步删除

Redis提供了惰性删除和异步删除两种机制。惰性删除指过期的key不会立即删除,而是在访问时检查并删除,这是Redis的默认行为。异步删除通过UNLINK命令实现,它先逻辑删除key,再异步释放内存,避免DEL命令的同步阻塞问题。在redis.conf中,LAZY FREEING相关配置控制内存释放方式,如lazyfree-lazy-expire决定过期键的内存释放是否异步。惰性删除无法关闭,而异步删除可通过配置选择使用场景,如内存回收、过期处理等场景是否采用异步方式。

2025-11-29 22:07:37 1430

原创 redis大key问题-生成大key-生成100万条测试数据

本文介绍了Redis大key问题的测试方法,包括安装Redis 7.0.0单机版,并通过脚本批量生成不同数据类型的测试数据。详细展示了如何创建不同规模的大key:字符串类型(5万-50万字符)、哈希类型(5万-50万键值对)、列表类型(5万-50万元素)、集合类型(5万-50万成员)和有序集合类型(5万-50万成员)。同时提供了查看各类型key大小的命令,如STRLEN、HLEN等,为分析Redis大key问题提供了完整的测试方案。

2025-11-29 22:06:12 894

原创 redis大key问题

Redis大key问题解析:大key主要指value过大的情况,String类型建议控制在10KB以内,其他类型元素不超过5000个。可通过redis-cli --bigkeys扫描最大key,或使用memory usage查看具体内存占用。删除大key时,String类型建议用unlink异步删除,其他类型采用渐进式删除(先删元素再删key)。本文基于Redis 7.0.0版本,包含单机安装参考和官方文档链接。

2025-10-23 23:40:24 476

原创 mysql8支持远程访问 -mysql5.7支持远程访问

MySQL远程访问配置对比:5.7版本可直接创建远程用户并授权,使用"grant all privileges"语句同时完成用户创建和权限分配;8.0版本则需分两步操作,先创建用户再单独授权。两者都需要预先设置密码级别,8.0版本将用户创建与授权分离,安全性更高。授权语句基本相同,都赋予用户全部数据库权限和权限传递能力(with grant option)。(98字)

2025-10-19 23:51:02 219

原创 springboot整合redis-RedisTemplate集群模式

本文介绍了SpringBoot整合Redis集群模式的方法,主要内容包括:1)搭建Redis集群环境;2)引入SpringBoot的Redis依赖;3)配置集群连接参数,如节点地址、密码、连接池和刷新策略等;4)自定义RedisTemplate的Bean以解决序列化问题,配置了String类型的key序列化和JSON格式的value序列化。文章提供了详细的YAML配置示例和Java配置类代码,并说明了各参数的作用,适用于SpringBoot 3.2.0和Redis 7.0.0环境。

2025-10-19 21:44:27 1199

原创 springboot整合redis-RedisTemplate单机模式

本文介绍了SpringBoot整合Redis的单机模式实现。主要内容包括:Redis单机安装、SpringBoot依赖引入(3.2.0版本)、Lettuce连接池配置、RedisTemplate使用示例。示例代码展示了通过RedisTemplate实现订单数据的存取操作,包含键值对存储、随机ID生成、日志记录等功能。配套文档提供了Redis数据类型、持久化、集群模式等20余篇技术文章链接,以及Redis官方文档参考,适用于开发者快速实现SpringBoot与Redis的整合应用。

2025-10-19 21:39:30 750

原创 springboot整合redis-Lettuce

本文介绍了SpringBoot整合Redis-Lettuce的方法,包括Redis单机安装、数据类型操作及持久化等基础知识。详细说明了如何使用Lettuce连接单机版Redis,涵盖字符串、列表、哈希、集合和有序集合等基本数据类型的操作示例。提供了Redis 7.0.0与SpringBoot 3.2.0的版本兼容性说明,并给出完整的代码实现,包括连接配置、命令执行和结果处理等关键步骤。适合需要快速上手Redis-Lettuce集成的开发者参考。

2025-10-18 01:00:03 436

原创 springboot整合redis-Jedis

本文介绍了SpringBoot整合Redis-Jedis的详细过程。主要内容包括Redis单机安装、常用数据类型操作,以及通过Jedis客户端连接Redis的完整示例代码。文章提供了Redis 7.0.0和SpringBoot 3.2.0环境下的配置方法,演示了字符串、列表、哈希、集合和有序集合等数据类型的CRUD操作,并附有相关官方文档和详细教程链接。开发者可快速通过该指南实现SpringBoot项目与Redis的集成。

2025-10-18 00:58:38 372

原创 11 - spring security自定义短信验证码登录

本文介绍了如何实现Spring Security自定义短信验证码登录功能。主要内容包括:自定义身份认证令牌TextMessageAuthenticationToken(参考UsernamePasswordAuthenticationToken实现已认证/未认证状态)、自定义登录认证过滤器TextMessageAuthenticationFilter(处理短信登录请求,提取手机号和验证码参数)以及自定义认证提供者TextMessageAuthenticationProvider(实现短信验证码认证逻辑)。文档

2025-10-15 01:27:40 480

原创 10 - spring security基于账号密码的登录流程

本文摘要总结了Spring Security基于账号密码的登录流程。主要内容包括:1) 登录流程在项目启动时完成相关对象初始化;2) POST请求/login时会调用UsernamePasswordAuthenticationFilter进行认证处理;3) ProviderManager使用多个AuthenticationProvider依次尝试认证;4) DaoAuthenticationProvider负责实际认证工作,验证成功后返回已认证状态的UsernamePasswordAuthenticatio

2025-10-15 01:25:42 397

原创 09 - spring security加载流程

Spring Security 加载流程摘要: 核心配置类HttpSecurityConfiguration通过@Bean创建原型作用域的HttpSecurity对象,初始化默认安全配置(CSRF、登录页等)。 SpringBootWebSecurityConfiguration提供默认的SecurityFilterChain Bean,配置基础认证规则(anyRequest().authenticated())。 开发者可通过自定义SecurityFilterChain Bean覆盖默认配置,此时会注入预

2025-09-22 23:39:09 1013

原创 08 - spring security基于jdbc的账号密码

Spring Security基于JDBC的认证实现 本文介绍了Spring Security框架中基于JDBC的账号密码认证实现方式。主要内容包括:1) 使用Spring Security提供的JdbcUserDetailsManager实现数据库认证;2) 创建适配MySQL的users和authorities表结构;3) 配置数据源和UserDetailsManager Bean;4) 演示用户创建和权限分配。相比内存认证,JDBC认证将用户信息持久化到数据库,并自动处理登录认证等核心功能。文章还提供

2025-09-22 23:33:59 952 1

原创 07 - spring security基于数据库的账号密码

本文介绍了如何在Spring Security中实现基于数据库的账号密码认证。主要内容包括:1)添加MyBatis-Plus和MySQL依赖;2)配置数据库连接信息;3)创建用户实体类和Mapper接口;4)自定义DatabaseUserDetailsManager实现UserDetailsManager接口,重写loadUserByUsername方法从数据库查询用户信息。通过这种方式替代内存存储的用户认证数据,使系统能够从数据库获取用户凭证进行安全认证。文中还提供了相关配置文件和代码示例,帮助开发者快速

2025-08-24 20:15:19 378

原创 06 - spring security角色和权限设置

摘要:本文介绍了Spring Security中角色和权限的设置方法。通过代码示例展示了如何在内存中配置用户权限(使用.authorities()方法)和角色(使用.roles()方法),并指出两者不能同时使用(后者会覆盖前者)。特别说明.roles()方法实际是添加ROLE_前缀的权限,且角色名不能以ROLE_开头。文中还提供了相关技术文档链接供进一步参考。(148字)

2025-08-24 20:12:52 428

原创 redis集群模式 -批量操作

本文介绍了Redis集群模式下键值对批量操作的注意事项。由于Redis集群采用分片机制,批量操作命令(如mset、mget)要求所有key必须位于同一slot,否则会报错"CROSSSLOT"错误。为解决此问题,可通过在key中添加相同的大括号标记(如k1{group1}),使这些key被分配到同一slot。需要注意的是,大括号标记会作为key的一部分,后续操作也需使用完整key名。文章还详细说明了Redis集群中key命中slot的哈希规则,并提供了实际示例演示如何正确处理集群模式下的

2025-08-24 20:10:06 747

原创 gitlab、jenkins等应用集成ldap

本文介绍了GitLab和Jenkins与LDAP的集成方法。GitLab方面,通过修改配置文件/etc/gitlab/gitlab.rb,设置LDAP服务器信息、登录属性等参数,执行gitlab-ctl reconfigure完成配置。Jenkins方面,通过管理界面配置LDAP服务器地址、用户搜索路径、管理员信息等,并设置显示名称和邮箱属性。文章还提供了配置异常时的恢复方法,即还原备份的config.xml文件。两种集成方式均详细说明了关键参数设置和参考文档链接。

2025-08-19 23:11:42 1048

原创 openldap安装 -添加条目

本文介绍了OpenLDAP 2.6.10的安装与配置过程。主要内容包括:从官网下载安装包并解压、执行configure配置、编译安装、编辑数据库配置文件(需导入cosine.ldif和inetorgperson.ldif等schema)、启动服务、验证服务运行状态。接着详细说明了如何通过ldapadd命令依次添加组织、管理员、分组和用户条目到LDAP目录中,并给出了每个步骤对应的.ldif文件内容示例。最后提供了两个常用的LDAP客户端工具链接。

2025-08-19 23:09:43 1167

原创 redis集群模式 -扩缩容

本文介绍了Redis集群模式的扩容操作,重点讲解了如何将新主节点加入现有集群。主要内容包括:1)当前集群的主从关系说明;2)启动新节点6385、6386的过程;3)使用redis-cli工具检查集群状态;4)通过add-node命令将新主节点6385加入集群。文档还提供了相关技术文章的参考链接,涉及Redis集群搭建、分区算法等核心概念。适用于Redis 7.0.0版本,为管理员提供了集群扩容的实用指导。

2025-08-17 02:31:00 886

原创 redis集群模式 -节点故障 -节点主从调整

Redis集群模式下,当主节点故障时,其对应从节点会自动升级为主节点。通过实验模拟主节点下线(如192.168.145.132:6382节点执行shutdown),观察集群状态变化,原从节点(192.168.145.134:6381)会接管主节点职责。当故障节点恢复后,不会重新成为主节点,而是作为新主节点的从节点运行。这种机制保证了Redis集群的高可用性,确保在节点故障时服务不中断。文档还提供了Redis 7.0.0集群搭建、分区算法等相关技术资料链接。

2025-08-17 02:28:39 704

原创 redis集群模式 -集群搭建

本文介绍了Redis集群模式的配置方法。主要内容包括:Redis集群由多个主节点组成,每个主节点负责16384个槽位中的一部分;配置步骤包括创建6个独立节点(分布在3台虚拟机上),修改配置文件启用集群模式,启动节点服务;最后使用redis-cli命令构建集群并分配主从关系(每个主节点配一个从节点)。文章提供了详细的配置参数说明和操作命令,适合需要搭建Redis分布式集群环境的开发者参考。

2025-08-06 00:04:24 734

原创 redis集群模式 -分区算法

Redis集群通过16384个槽位实现数据分片,支持水平扩展和动态扩容缩容。集群采用CRC16算法计算key对应的槽位,每个主节点负责部分槽位,数据均匀分布在多个节点上。相比传统哈希取余和一致性哈希算法,哈希槽分区解决了数据倾斜问题,简化了节点增减时的数据迁移。集群支持主从复制,确保高可用性和读取扩展。这种架构使Redis能够处理大规模数据存储需求,同时保持高性能和稳定性。

2025-08-06 00:02:12 801

原创 redis哨兵模式

Redis哨兵模式是一种高可用解决方案,通过监控主从节点状态实现自动故障转移。基本配置包括:1)搭建主从复制环境,主节点需配置masterauth参数;2)部署至少3个哨兵节点形成集群;3)修改sentinel.conf文件,设置监控的主节点信息(IP、端口、quorum值)、访问密码、宕机判定时间(默认30秒)等关键参数。哨兵模式能在主节点故障时自动选举新主节点,确保服务持续可用。注意哨兵节点应独立部署,且所有节点密码需保持一致。配置完成后,哨兵会持续监控Redis实例状态,并在达到quorum票数时触发

2025-07-27 16:26:43 442

原创 05 - spring security权限控制

Spring Security权限控制实现摘要 本文介绍了Spring Security的权限控制实现方案,包含以下核心内容: 基础配置:通过WebSecurityConfig配置类实现安全过滤链,包括内存用户管理、权限分配和接口保护配置。 权限控制: 使用.authorities("USER_LIST")为用户分配权限 通过.hasAuthority("USER_LIST")限制接口访问权限 示例展示了/user/list接口的权限保护实现 自定义配置: 自定义登录

2025-07-27 16:24:56 374

原创 redis主从复制

本文介绍了Redis主从复制的配置方法。主要内容包括:1) 仅需在从节点配置主节点信息和密码即可建立同步;2) 详细演示了如何配置一主二从架构,包括修改主从节点的配置文件关键参数(如端口、密码、持久化路径等);3) 从节点需额外配置replicaof和masterauth参数;4) 介绍了启动服务和验证主从同步的方法;5) 说明了通过info replication命令查看主从状态;6) 补充了使用slaveof命令临时配置主从的方法。文档适用于Redis 7.0.0版本,提供了完整的配置示例和验证步骤。

2025-07-18 00:58:12 740

原创 redis发布订阅

Redis发布订阅模式提供了多频道消息通信机制。通过SUBSCRIBE命令可订阅指定频道,PSUBSCRIBE支持通配符匹配订阅。PUBLISH命令向频道发送消息,所有订阅者都会收到。PUBSUB命令可查询活跃频道、订阅者数量等信息。UNSUBSCRIBE用于取消订阅。该特性适用于实时消息推送场景,但订阅者需保持连接状态接收消息。文档详细介绍了相关命令用法及响应格式,并提供了7.0.0版本的实践参考。

2025-07-18 00:56:23 619

原创 redis管道 -redis pipeline -redis pipelining

Redis管道(pipeline)是一种提高性能的技术,允许一次性批量发送多个命令而不等待每个命令的响应。与原生批量命令(如mset/mget)相比,管道支持不同数据类型的命令混合执行,但不具备原子性。与事务相比,管道是非原子性的且不会阻塞其他命令。使用注意事项:1) 管道不保证原子性,出错会继续执行后续命令;2) 应控制批量命令规模(如每次10K条),避免占用过多内存。典型使用方式是通过文件存储命令并用redis-cli的--pipe参数执行。

2025-07-10 01:36:47 942

原创 redis事务

Redis事务提供了一种将多个命令打包执行的机制,通过MULTI、EXEC、DISCARD和WATCH命令实现。事务中的所有命令会被序列化并按顺序执行,保证其作为原子操作。EXEC命令触发执行所有命令,而DISCARD则取消事务。WATCH命令用于监控键值变化,实现乐观锁机制。Redis事务确保在EXEC调用前不会执行任何命令,若中间断开连接则全部操作失效。事务执行结果以数组形式返回,保持命令顺序。当连接处于MULTI状态时,所有命令都会返回QUEUED响应,直到EXEC或DISCARD被调用。

2025-07-10 01:32:13 417

原创 redis持久化-纯缓存模式

Redis支持纯缓存模式(No persistence),完全禁用数据持久化。配置方法:1)禁用RDB:在配置文件中设置save "";2)禁用AOF:将appendonly设为no(默认值)。修改后需重启Redis服务。注意:禁用RDB后仍可通过命令手动创建快照。这种模式适合仅作缓存使用的场景,但需承担数据丢失风险。相关配置参考Redis 7.0.0版本文档。

2025-07-04 00:22:25 521

原创 redis持久化-RDB+AOF混合模式

Redis支持RDB+AOF混合持久化模式,在同时启用时AOF优先加载。混合模式下会产生三种文件:RDB格式的基础快照文件(.base.rdb)、记录增量操作的AOF文件(.incr.aof)和记录文件顺序的清单文件(.manifest)。该模式默认开启(aof-use-rdb-preamble yes),相比单独使用RDB或AOF能提供更好的数据持久性保障。Redis 7及以上版本采用这种多文件组合方式管理持久化数据,通过RDB格式保存完整数据集快照,再用AOF记录后续操作,兼具性能和数据安全性优势。

2025-07-04 00:21:08 488

原创 04 - spring security关闭csrf攻击防御

摘要:本文介绍了如何在Spring Security中关闭CSRF攻击防御机制。通过调整WebSecurityConfig配置类,使用http.csrf().disable()方法可以关闭CSRF防护。关闭后,登录请求/longin将不再需要_csrf参数,登出请求/logout会从POST方式变为GET方式,直接执行退出操作而不再跳转自定义登出页面。文章还提供了相关配置代码示例和注意事项,是Spring Security实践中的实用技巧。

2025-06-27 01:01:49 455

原创 redis持久化-AOF

Redis持久化机制AOF(追加文件)通过记录所有写操作命令来实现数据持久化。AOF默认关闭,需在配置文件中设置appendonly yes开启。Redis 7.0采用多部分AOF机制,将文件分为基础文件和增量文件。AOF提供三种文件写回策略:always(每次写操作同步)、everysec(每秒同步,默认)和no(由操作系统决定)。相比RDB快照,AOF能提供更好的持久性保障,在服务器故障时最多丢失1秒数据。AOF和RDB可以同时启用,重启时Redis会优先加载AOF文件重建数据状态。

2025-06-27 00:47:43 1180

原创 redis持久化-RDB

redis持久化-RDB

2025-05-02 19:35:32 999

原创 03 - spring security自定义登出页面

spring security自定义登录页面

2025-05-02 19:34:45 588

原创 redis数据类型-位域bitfield

redis数据类型-位域bitfield

2025-04-26 03:21:48 955

原创 redis数据类型-流Stream

redis数据类型-流Stream

2025-04-26 03:20:11 991

原创 redis数据类型-地理空间GEO

redis数据类型-地理空间GEO

2025-04-22 23:56:01 671

原创 redis数据类型-基数统计HyperLogLog

redis数据类型-基数统计HyperLogLog

2025-04-22 23:53:53 490

Java编码规范-阿里巴巴

Java编码规范-阿里巴巴

2017-04-05

GaussDB 200 6.5.1 软件安装 02.pdf

GaussDB 200 6.5.1 软件安装 02.pdf,华为GaussDB数据库安装教程。本文档介绍GaussDB 200的部署方案及软件安装的具体操作过程。本文档适用于安装工程师。

2019-11-15

空空如也

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

TA关注的人

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