- 博客(80)
- 收藏
- 关注
原创 跟着GPT学设计模式之模板模式
模板模式是一种行为型设计模式,它定义了一个操作中的算法骨架,将一些步骤的具体实现延迟到子类中。该模式使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
2024-07-19 11:39:12
933
原创 MySQL单表千万级数据查询优化大家怎么说(评论有亮点)
单表千万级数据是MySQL查询的一个坎,可能还不是天花板。“一个人走的慢,一群人走的快”,通过讨论可以发现MySQL千万数据的全貌大概是怎样的。
2024-07-04 16:08:46
726
原创 简单了解下Java中锁的概念和原理
Java的锁通过java代码实现,go语言的锁通过go实现,python语言的锁通过python实现。它们都实现的什么呢?这部分就是锁的定义和设计模式、算法、原理等一些理论上的东西。
2024-06-29 16:03:17
726
原创 使用Sentinel进行服务调用的熔断和限流管理(SpringCloud2023实战)
Sentinel是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。
2024-06-21 08:58:58
829
原创 浅浅了解下Spring中生命周期函数(Spring6全攻略)
Spring框架设计生命周期回调函数的主要目的是为了提供一种机制,使开发人员能够在对象创建、初始化和销毁等生命周期阶段执行特定的操作。这种机制可以帮助开发人员编写更加灵活和可维护的代码。
2024-06-14 16:09:10
308
原创 跟着GPT学设计模式之观察者模式
观察者模式是一种行为型设计模式,它定义了对象之间的一对多依赖关系,使得当一个对象的状态发生改变时,其依赖对象都能够收到通知并自动更新。一般情况下,被依赖的对象叫作被观察者(Observable),依赖的对象叫作观察者(Observer)。
2024-06-06 10:33:52
1149
原创 SpringBoot基于OpenAPI3的接口文档管理快速集成和使用
本文主要简单介绍SpringCloud2023中进行接口文档管理,方便前后端开发和文档维护。文档管理工具基于开源的knife4j封装的openapi3。
2024-06-02 16:19:31
1148
原创 Spring6框架中依赖注入的多种方式(推荐构造器注入)
依赖注入(DI)是一种过程,对象通过构造函数参数、工厂方法的参数或在对象实例构建后设置的属性来定义它们的依赖关系(即与其一起工作的其他对象)。
2024-05-26 15:16:25
457
原创 了解下Java并发编程中AQS原理和实现
AQS是Java并发包中的一个抽象类,它提供了构建同步器的基础框架。AQS提供了一个实现阻塞锁和相关同步器(信号量、事件等)的框架,该框架依赖于先进先出(FIFO)的等待队列。这个类被设计为大多数依赖于单个原子int值表示状态的同步器的有用基础。
2024-05-23 17:47:25
885
原创 简单上手SpringBean的整个装配过程
在Spring6中定义一系列独立的bean定义出发,进而构建出一个对象间相互协作以达成目标的完全成型的应用程序。
2024-05-15 17:14:40
442
原创 在SpringCloud2023中快速集成SpringCloudGateway网关
本文主要简单介绍SpringCloud2023实战中SpringCoudGateway的搭建。后续的文章将会介绍在微服务中使用熔断Sentinel、鉴权OAuth2、SSO等技术。
2024-05-09 09:46:05
266
原创 一次通过dump文件分析OutOfMemoryError异常代码定位过程
OutOfMemoryError异常是Java程序中常见的异常,通常出现在内存不足时,导致程序无法运行。借助MAT内存分析工具分析可能的内存泄漏代码问题定位。
2024-05-06 09:51:54
856
3
原创 从自定义一个作用域开始来了解SpringBean的作用域
Spring6提供了多种Bean作用域。本文从作用域demo、自定义设计作用域到作用域Spring实现来全方位了解作用域。以及说明了单例bean里面注入了原型bean这种bug级操作怎么解决。
2024-05-01 10:58:55
1011
1
原创 Spring中控制反转究竟反转的什么
控制反转(Inversion of Control, IoC)是一个设计原则,Spring框架对控制反转原则进行了实现。
2024-04-28 10:35:53
793
1
原创 使用JDK自带工具进行JVM内存分析之旅
进行jvm内存分析可以排查存在和潜在的问题。通过借助jdk自带的常用工具,可以分析大概可能的问题定位。
2024-04-19 15:26:06
1151
原创 使用线程间通信方法wait和notify实现一个简单的显示锁MyLock
线程间通信是指在同一个进程内的多个线程之间进行的通信。在Java中使用wait和notify、notifyAll来实现同步阻塞和异步非阻塞模型通信是常见的做法。同时可以借助wait和notify、notifyAll接口实现一把显示锁。
2024-04-18 09:32:11
303
原创 在SpringCloud2023中快速集成SpringCloudGateway网关
本文主要简单介绍SpringCloud2023实战中SpringCoudGateway的搭建。后续的文章将会介绍在微服务中使用熔断Sentinel、鉴权OAuth2、SSO等技术。
2024-04-17 09:17:32
909
1
原创 在linux中迁移Docker默认镜像存储路径解决磁盘空间满的问题
通过yum或者apt安装的docker通常数据存储在/var/lib/docker/ ,包括镜像、运行数据等。然而这个目录是在根目录下面,容易导致系统盘满了。如果出现这种情况就需要迁移docker的默认目录。
2024-04-10 09:58:48
778
原创 跟着GPT学设计模式之适配器模式
适配器模式(Adapter Pattern)是一种结构型设计模式,用于将一个类的接口转换为客户端所期望的另一个接口。适配器模式允许不兼容的接口协同工作,通过封装一个类,将其接口转换为另一个客户端所需的接口。
2024-04-09 09:03:10
630
原创 Java并发编程中的基础概念Monitor
在Java并发编程中,Monitor(监视器)是一种同步机制,用于实现线程间的互斥访问和共享资源的同步。它是一种基本的并发控制原语,在Java中以对象的形式存在。
2024-04-06 14:51:40
933
原创 在SpringCloud2023中使用openfeign进行远程调用
微服务架构将应用程序划分为一组小型、松耦合的服务,每个服务都运行在自己的进程中,并通过轻量级的通信机制进行通信。远程调用在微服务架构中扮演着重要的角色。
2024-04-02 16:40:10
365
原创 如何在SpringCloud2023中快速集成配置中心
SpringCloud项目中集成配置中心可以更加方便的管理多版本的配置,此处使用springcloudconfig作为示例说明。
2024-03-27 14:06:50
724
原创 使用JDK提供的常用工具在多线程编写线程安全和数据同步的程序
共享资源指多个线程同时对同一份资源进行读写操作,这就需要保证多个线程访问到的数据是一致的,即数据同步或资源同步。
2024-03-26 18:04:19
792
原创 如何在SpringCloud2023中快速集成注册中心
注册中心在前文提到有很多选型,在这里以Spring Cloud Zookeeper为例说明注册中心的集成和使用。
2024-03-20 15:06:37
845
原创 Spring6如此厉害的框架到底包含哪些内容
源码下面无秘密,这是程序员的口头禅。对于强大而且设计优秀的Spring框架也是这样的,在基础代码层层堆叠之下,Spring成为了一个非常流行的框架。
2024-03-18 14:46:07
911
原创 还在用ifelse来写业务?了解下Spring状态机
当开发者意识到代码库开始变得般混乱不堪时,就会在现有项目中引入状态机。状态机的引入有助于将复杂多变的应用程序状态转换过程组织得更为有序和清晰,从而避免代码陷入难以维护的境地。
2024-03-15 15:05:23
988
原创 跟着GPT学设计模式之桥接模式
“将抽象和实现解耦,让它们可以独立变化。” 桥接模式通过将一个类的抽象部分与实现部分分离开来,使它们可以独立地进行扩展和修改。
2024-03-13 17:37:15
1310
1
原创 【技术人生】工程师面对新质生产力的思考和选择
技术的演进与发展,从长远视角审视,实则是一场工程师与经济周期之间的持久赛跑,无论这一周期表现为康德拉季耶夫周期等长周期,还是更短期的行业起伏。而这些短周期波动,与我们的决策和选择紧密相连,影响深远。
2024-03-12 18:01:38
921
原创 并发编程Thread的常用API有哪些?
在JDK17中,Thread类提供了一组常用的API,用于管理线程的创建、启动、暂停、恢复和销毁等操作。本文从api、源码、编程示例等方面详细说明Thread常用函数的使用和注意事项。
2024-03-08 09:10:16
828
原创 如何简洁高效的搭建一个SpringCloud2023的maven工程
依赖管理有gradle和maven,在这里选择比较常用和方便的Maven作为工程项目和依赖管理工具来搭建SpringCloud实战工程。主要用到的maven管理方式是多模块和bom依赖管理。
2024-03-06 10:03:55
1043
原创 SpringCloud2023最新版本该如何进行组件选型?
开发分布式系统具有挑战性。复杂性从应用程序层转移到网络层,并要求各个服务之间更密切的交互。将代码设计为“云原生”意味着要处理12要素(12-factor)的问题,例如外部配置、无状态性、日志记录以及与后端服务的连接。Spring Cloud项目套件中包含了许多服务,可以使应用程序在云环境中运行。
2024-03-05 09:51:07
1173
原创 跟着GPT学设计模式之代理模式
代理模式(Proxy Design Pattern)在不改变原始类(或叫被代理类)代码的情况下,通过引入代理类来给原始类附加功能。通过GPT来一探原理。
2024-03-02 09:14:08
956
原创 接口幂等该如何设计和实现
接口幂等性指的是一个接口或操作在相同的请求参数下,无论被执行多少次,其结果都是一致的且不会产生副作用。换句话说,如果一个请求已经成功执行,再次执行相同的请求应该不会对系统状态产生任何额外的影响。例如,一个获取用户信息的接口就是幂等的,因为多次获取同一个用户的信息不会改变系统的状态。
2024-02-28 11:42:15
869
原创 SpringCloud和SpringBoot的版本依赖该怎么选择
Spring Cloud是一个基于Spring Boot的微服务框架,用于构建和管理分布式系统的各个组件。它提供了一套完整的解决方案,包括服务注册与发现、配置管理、负载均衡、熔断器、消息总线、数据流等功能。
2024-02-27 10:43:58
604
原创 基于Linux直接安装的Nginx版本升级方法
随着版本的迭代和漏洞的发现,Nginx作为一款软件避免不了打补丁的命运。以下基于Linux直接安装的Nginx版本升级过程,相较于镜像安装来说明的。以下操作均在本地虚拟机中操作验证,请验证后再线上操作。基于centos7测试。
2024-02-23 15:21:17
496
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人