- 博客(62)
- 资源 (2)
- 收藏
- 关注
原创 【实战指南】SpringBoot结合Zookeeper/Nacos构建Dubbo微服务
Nacos整合Dubbo能够提供动态服务发现、配置管理和服务治理,简化了微服务间的通信和管理,提升了开发效率和系统可维护性。而Zookeeper与Dubbo结合,利用其分布式协调服务特性,保证了服务注册与发现的高可用性和一致性,增强了系统的稳定性和故障恢复能力。两者皆为Dubbo生态提供了强大的支撑,促进了分布式系统的健壮性和灵活性。
2024-06-19 23:45:46
2068
原创 从零到一,构建坚如磐石的Redis 7高可用集群:全程实录与关键技术详解
使用Docker搭建Redis集群是一种快速便捷的部署方案,通过容器化技术实现多个Redis实例间的协同工作。首先安装并配置Docker环境,接着拉取官方Redis镜像,利用Docker网络创建自定义网络以保证节点间通信。然后,分别运行Redis容器,并在启动时指定不同的端口、配置文件以及数据卷挂载点,确保每个Redis实例独立运行且持久化存储。最后,利用Redis自带的集群管理命令或脚本将各个实例组织成一个集群,通过槽分区(slot sharding)机制分配数据,并设置主从复制和哨兵模式以实现高可用性和
2024-03-09 20:44:59
1674
原创 Redis 7.0版本主从复制机制
Redis 7.0版本的主从复制是一种高可用和数据分发策略,通过配置主节点(Master)和从节点(Slave),主节点将写操作同步至从节点,实现数据备份与冗余。从节点可用于读请求分摊、故障恢复或搭建更复杂的Sentinel集群和Cluster架构,确保数据一致性与服务可靠性。在7.0版本中,主从复制依旧支持部分重同步优化,提高了大规模部署下的性能和稳定性。
2024-03-05 23:03:33
1386
1
原创 Redis7 实现持久化的三种方式
Redis提供了三种持久化方式,分别是RDB(Redis DataBase)持久化、AOF(Append Only File)持久化和混合持久化。RDB持久化:RDB持久化生成的快照文件是一个紧凑压缩的二进制文件,占用空间较小,适用于备份和全量复制等场景。同时,由于快照文件是完整的数据备份,因此恢复速度较快。但是,RDB持久化可能存在数据丢失的风险,因为它只保存了某个时间点的数据快照,无法记录数据的变化过程。
2024-03-03 17:35:52
1315
原创 万字讲解新一代分布式任务调度框架Power-job
PowerJob是一个功能强大的分布式任务调度平台,用于构建数据驱动的应用程序。它提供了简单易用的API和可视化的界面,让用户能够轻松地创建、管理和调度任务。本文通过近两万字带你实现PowerJob下载、使用、部署三方面的内容,内容详细、案例简单。
2024-01-18 22:31:48
4579
原创 Windows安装Docker运行中间件(详细)
Docker彻底改变了应用部署的方式,使得应用更加容易地迁移和扩展。通过Docker,我们可以轻松地创建、部署和运行应用程序,而无需担心环境配置和依赖问题。其次,Docker提高了开发效率。
2024-01-09 00:33:02
2183
原创 ShardingSphere数据分片之读写分离
读写分离是一种常见的数据库架构,它将数据库分为主从库,一个主库(Master)用于写数据,多个从库(Slave)进行轮询读取数据的过程。主从库之间通过某种通讯机制进行数据的同步。
2023-12-14 13:30:39
2810
2
原创 Mysql8.0实现主从复制
数据库的主从复制(master-slave replication)是一种数据复制技术,其中一台数据库服务器(主服务器)上的数据变更会复制到另一台或多台数据库服务器(从服务器)上。这种复制可以是同步的或异步的。
2023-12-10 16:30:25
2287
3
原创 ShardingSphere数据分片之分表操作
使用ShardingSphere进行分库分表是一种常见的数据库优化方案,旨在提高数据库的性能和可扩展性。它允许用户将一个数据库拆分成多个数据库,并将一个表拆分成多个表,以分布存储数据。通过ShardingSphere,用户可以更加灵活地管理数据,并实现对数据库的高效访问和控制。然而,使用ShardingSphere进行分库分表也需要考虑一些挑战,如配置复杂、维护困难以及可能的功能限制等。因此,在使用ShardingSphere进行分库分表时,需要仔细评估其适用性和成本效益。
2023-12-08 23:46:35
2317
3
原创 继承JsonSerializer+注解实现自定义数据脱敏方案
数据脱敏是一种重要的数据处理技术,可以保护隐私和数据安全,提高数据处理效率和安全性,同时满足法律法规和合规要求。
2023-11-27 20:17:04
1658
原创 分布式权限认证-Sa-token,So Easy!
Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关鉴权 等一系列权限相关问题。
2023-11-26 23:23:09
2979
1
原创 SpringBoot结合Druid实现SQL监控
Druid是一个数据库连接池,具有高效、功能强大、可扩展性好的特点。与DBCP相比,Druid在功能、性能、扩展性方面都更优秀。Druid包括三个部分:基于Filter-Chain模式的插件体系、高效可管理的数据库连接池以及SQLParser。Druid内置了一个功能强大的StatFilter插件可以监控数据库访问性能,清楚知道连接池和SQL的工作情况。
2023-10-19 23:29:22
1668
4
原创 Gateway网关动态路由配置(YAML格式 + JSON格式)
在我们开发微服务系统时,Gateway是必不可少的一个组件,我们可以通过Gateway来转发用户进行的请求,这样就可以隐藏具体系统的信息。YAMLroutes其中第二种和第三种都可以结合Nacos实现动态路由,主要看开发者怎么选择。第二种就是结合Nacos的配置中心,将routes参数下的数据放入到nacos中,我这里使用第三种进行展示,用JSON的格式配置路由信息。
2023-09-23 16:02:59
4848
原创 Sentinel结合Nacos实现配置持久化(全面)
在分布式微服务的开发中,Gateway是必不可少的组件,那么对于服务的配置也会集成到Gateway中,但是我们不能把配置放在内存中,此时就需要结合nacos配置中心来实现配置的持久化了。
2023-09-22 21:21:55
9066
5
原创 前端:地图篇(一)
百度地图带来的便利是毋庸置疑的。首先,当我们想去某个目的地,但又对附近不熟悉时,导航功能强大。其次,百度地图可以规划最优路线,为我们的出行节省最多的时间。其三,当我们需求某样东西,但没有目的地时,百度地图可以自动匹配周边环境符合我们的需要。最后,安全系数增加。道路各种限制,限速,红绿灯指示,各种施工道路提醒等等。
2023-08-03 22:28:35
5887
1
原创 利用Clion编译器完成C++的头文件与源文件的映射
Java 是基于C/C++编写的,那么Java结合C/C++开发,是否会提升Java程序的性能呢?让我们一起行动起来吧。
2022-12-21 19:15:44
5499
3
原创 SpringBoot很实用的请求过滤器 - FilterRegistrationBean
在日常的开发中,我们的项目可能会被各种各样的客户端进行访问,那么,一些带有意图的朋友,就会利用自己所学的技术进行有目的的访问,那么我们的服务端就不再安全和可靠。
2022-10-08 23:56:56
18215
原创 MyBatis-plus实现逆向生成器
使用Mybatis-plus提供的逆向生成器,能让我们在开发中大大的节约建包建类的重复操作,本文详细的介绍了逆向生成器的创建与使用。
2022-08-17 11:34:33
5908
12
原创 Spring Boot配置多数据源的四种方式
在日常的项目中我们的开发都是采用单数据库的模式,但是在高并发的时代,单数据库已经无法承载大数据量的访问,所以就需要使用多个数据库进行对数据的读写分离。
2022-08-14 15:05:26
34469
40
原创 SpringBoot提供的缓存机制
Spring为我们提供了几个注解来支持Spring Cache。其核心主要是@Cacheable和@CacheEvict。
2022-07-03 21:39:22
1754
原创 SpringMVC实现拦截器的两种方式(详细)
本文介绍了SpringMVC中的两种过滤器的使用,分别是HandlerInterceptor和WebRequestInterceptor,详细的介绍了如何使用这两种过滤器。
2022-05-12 22:05:56
10148
1
原创 MySQL随机读取指定大小的数据量
学校里面常见的答题系统中,在题库中进行随机选择题目的时候,使用SQL的效率会比使用Java代码进行过滤来得更快,本段SQL执行的效率完全能应付百万的数据量
2022-04-17 20:10:20
1662
1
原创 一目了然的MyBatis一对一、一对多查询
从注解和XML文件两个方面进行一对一、一对多的关系映射,使用白话讲述了两者的区别并使用Junit单元测试进行结论的测试。
2022-03-22 20:47:54
1855
1
原创 Alibaba Druid数据库连接池直接起飞
1、什么是数据库连接池为什么要使用连接池:我们使用Java开发时,就需要访问数据库,而Java不能直接访问数据库,中间得通过JDBC来建立程序和数据库的连接,执行一个事务就需要创建一个连接,而程序和数据库建立连接的过程是最耗时间的,当程序变得庞大,如果频繁的让程序和数据库建立连接,则耗时非常大,所以,程序员们就有了连接池的概念连接池:存放着与数据库连接的通道,也就是JDBC中的Connection,事先定义好n 个连接,在程序启动的时候就初始化这些连接,后期直接从连接池中拿就行了,最后放回到连接池
2021-11-26 00:32:10
4076
1
原创 数据结构之栈入门到精通
1、什么是栈栈 是一种操作受限的线性表只允许从一端插入和删除数据。栈有两种存储方式,即线性存储和链接存储(链表)。栈的一个最重要的特征就是栈的插入和删除只能在栈顶进行,所以每次删除的元素都是最后进栈的元素,故栈也被称为后进先出(LIFO)表。相比之前的线性表相比之前的线性表,栈多了限制,只能在一端进行入栈和出栈的操作,如果要中间的元素,就必须将该元素之前的所有元素都出栈2、栈结构的分类栈式结构分为顺序栈(数组实现)、链式栈(链表实现)。编写栈结构我们需要将线性表的思路进行微微的转换,将对
2021-10-14 15:23:59
945
原创 Git分布式版本控制器的安装和配置
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
2021-10-12 12:54:05
1119
原创 java数据结构之树结构入门到入土
1、树结构是一种抽象数据类型或是实现这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它具有以下的特点:①每个节点有零个或多个子节点;②没有父节点的节点称为根节点;③每一个非根节点有且只有一个父节点;④除了根节点外,每个子节点可以分为多个不相交的子树;树结构的基本逻辑模型:2、树结构的相关术语1、根节点:不能一棒子打死的说根结点就是树结构中的第一个结点,这是错误不全面的说法,个人认为正确的说法是:只有子结点而没有结点的结点,这一结论贯彻树结构,如果没有理解正确,则在
2021-09-21 21:07:59
2168
贪吃蛇小游戏(IDEA修正2.0版本)
2021-09-11
链表+泛型+反射实现自定义的LinkedList集合类
2021-09-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人