自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 微服务依赖版本管理

结构清晰: 三层架构(根POM -> BOM -> 子模块)管理集中: 版本控制集中在BOM模块维护简单: 一处修改,全局生效扩展容易: 新模块可直接继承管理通过合理的依赖版本管理,可以显著提高微服务项目的稳定性和可维护性,为项目的长期发展奠定坚实基础。

2025-12-07 23:11:45 1013

原创 微服务搭建踩坑

最近要新搭建一个微服务项目,在搭建过程中踩了不少坑。为了防止再犯,这里把踩过的坑总结一下。

2025-12-07 18:00:11 323

原创 mapperscan踩坑

今后如果看到类似于mybatis绑定异常的报错,建议优先查询一下服务所在入口类上是否有配置mapperscan,是否需要对扫描的路径进行调整。

2025-11-20 22:36:47 438

原创 maven生命周期踩坑

开发时对maven的生命周期不太清楚,这点需要注意钩子执行时间有限(若过长可能被强制终止),多个钩子的执行顺序不保证。

2025-11-18 22:42:41 349

原创 groovy开发踩坑

之前对依赖的pom、jar类型的区别不同理解,对scope不同值的代码处理过程不太明白。java类没有生成实例时不会自动注入配置,之前忽视了这一点。对groovy不太熟悉,应该多看文档。

2025-11-18 01:45:06 198

原创 软件设计模式入门

你可以把设计模式看作是一个菜谱:一道菜谱描述了烹制一道菜的大致过程和方向,可能遇到的问题和所需材料,你可以根据自身实际有的食材和工具进行具体的实现。现有材料和工具不同,实现的结果可能会有所差异,但都是按菜谱给出的方向进行的。设计模式就是这样的,它。

2025-06-15 16:07:51 419

原创 spring如何处理bean的循环依赖

一级缓存:存储的是已经实例化完成的bean实例。二级缓存:存放在这里的是提前暴露的bean半成品。若Bean需AOP代理(如@Async、@Transactional),三级缓存的ObjectFactory会提前生成代理对象并存入二级缓存,避免重复创建代理。三级缓存:存放的是bean的ObjectFactory对象,通过ObjectFactory.getObject()可以获取具体的bean实例。

2025-06-14 22:58:38 1613 1

原创 spring动态代理与CGLIB

是不是觉得这种情况看着很熟悉?没错,spring aop以及事务管理的底层逻辑就是动态代理。

2025-06-14 11:37:38 404

原创 spring XML文件标签加载解析

spring会进行以下操作:spring在遇到xml文件后,会先查找处理器,再在处理器路由到对应的解析器。在解析器生成bean,把xml的值作为bean属性进行配置。

2025-06-14 00:45:31 539

原创 MySQL主从数据库搭建

学习了如何搭建MySQL主从数据库,为加深印象,写了这篇博客作为总结。本篇文章使用的是MySQL8.0,主库使用Windows操作系统,从库使用Linux。

2025-06-12 20:49:48 431

原创 spring cloud config更新配置

在开发微服务时,往往需要有开发环境、测试环境和生产环境,手动修改配置环境是一件很麻烦的事情,因此,这里使用spring cloud config管理配置环境。要使用spring cloud config,需要先在GitHub搭建一个仓库。

2025-05-21 23:57:38 469

原创 cookie跨域共享踩的坑

微服务在进行登录验证时,通常有这样的需求:在登录时生成一个令牌,该令牌有一定的有效期。仅在该令牌有效的情况下可以访问登录成功后的界面。如没有令牌或令牌失效,则要将网页重定向到登录界面。这种业务需求需要配置cookie跨域共享。。

2025-05-21 15:00:12 347

原创 spring cloud gateway配置

当有多个微服务项目时,就需要在前端配置多个http链接,这是件很麻烦的事情。此时,可以使用spring cloud gateway进行路由转发。spring cloud gateway是一个建立在Spring生态系统之上的API网关,在eureka注册微服务后,前端只需要把http请求发送到gateway微服务即可,gateway会自动进行请求转发和修改。

2025-05-20 14:03:44 1015

原创 spring配置并使用rabbitmq

在客户端链接到rabbitmq时,需要使用用户名/密码、JWT令牌或X509证书进行身份验证和授权。简单来说,就是“识别用户是谁”(身份验证),“确定用户可以做什么和不可以做什么”(授权)。在理解上述概念并创建相关资源后,就可以在spring项目里进行相关配置。

2025-05-19 16:32:25 2010

原创 k8s组件工作流程

通过apiserver写入etcd。创建ReplicaSet/Pod。上报状态至apiserver。更新etcd中的Pod状态。Endpoint变更时。绑定节点并更新etcd。

2025-04-27 02:10:40 1700

原创 k8s pod、job和cronJob

Job是Kubernetes的控制器,用于创建并管理一次性任务的Pod。Job 会创建一个或多个 Pod,并将继续重试执行 Pod,直到指定数量的 Pod 成功终止。job创建的pod停止运行后,默认不会删除pod。

2025-04-25 01:06:00 380

原创 k8s存活、就绪和启动探针

在学习k8s时,我曾疑惑集群自身就有pod重启机制,为什么还要专门配置探针。

2025-04-24 14:33:40 325

原创 gateway API

【代码】gateway API。

2025-04-22 22:50:45 527

原创 k8s拓扑域

简单来说,就是把多个节点按节点标签划分成多个不同的组,这些划分出来的组就是拓扑域。节点工作负载可按一定的规则在划分出来的拓扑域进行调度。

2025-04-22 18:24:22 660

原创 k8s上下文

它将集群的访问信息(API 地址、证书)、用户身份(如证书或 Token)以及可选的默认命名空间绑定在一起。切换上下文后,所有。

2025-04-21 20:29:01 263

原创 ingress配置

运行该命令会自动配置安装ingress类。

2025-04-16 14:08:38 209

原创 Jenkins本地仓库触发器

之后执行ssh-keyscan -t ed25519 github.com >> ~/.ssh/known_hosts(如没有该文件夹,需要先进行创建)在Jenkins主页点击右上角用户名,再点击Security->添加新Token,复制并保存该token。在从节点下载并安装java、git和maven后,在从节点的工作目录执行git init。执行chmod 644 ~/.ssh/known_hosts设置文件权限。配置完成后,可以在命令行手动执行。测试是否可以链接Jenkins。

2025-04-14 19:00:27 248

原创 mysql集群配置

【代码】mysql集群配置。

2025-04-13 02:04:48 450

原创 k8s高可用集群执行join报错

【代码】k8s高可用集群执行join报错。

2025-04-12 17:47:26 214

原创 PV、PVC和storageClass

即持久化存储卷,用于持久存储pod数据,避免因pod重启导致数据丢失。

2025-04-09 14:33:48 291

原创 ansible批量管理集群hosts

ansible会根据主机清单选择执行任务的节点。

2025-04-06 23:41:21 373

原创 如何使用ansible批量安装k8s

【代码】如何使用ansible批量安装k8s。

2025-04-03 00:26:31 209

原创 ansible配置安装

保存配置,重启sshd服务。

2025-03-29 18:33:07 279

原创 如何自建.repo仓库

【代码】如何自建.repo仓库。

2025-03-25 19:00:56 531

原创 k8s证书到期自动轮换

【代码】k8s证书到期自动轮换。

2025-03-19 23:49:53 344

原创 etcd安装与配置

如果使用官方推荐的集群部署工具(如 kubeadm),etcd 通常会被自动安装为容器化组件,无需手动操作。

2025-03-19 23:30:28 304

原创 k8s创建高可用集群

操作系统推荐CentOS Stream 10。高可用集群需要有5台以上的虚拟机,其中3台作为主节点,一台作为工作节点,一台作为负载均衡器。

2025-03-19 00:21:07 257

原创 nginx TCP/UDP反向代理

如果是源码编译,反向代理需要在编译nginx配置时加上–with-stream进行编译。大多数 Linux 发行版(如yum)提供包含 stream 模块的独立包。

2025-03-18 21:44:27 368

原创 k8s身份认证、访问控制和授权

k8s身份认证

2025-03-13 15:30:26 461

原创 如何安装kubeadm并创建集群

【代码】如何安装kubeadm并创建集群。

2025-03-12 19:11:03 248

原创 如何升级centos8的内核版本

升级centos8的内核版本

2025-03-11 14:26:25 409

原创 java内存区域与内存溢出异常(二)

三、HotSpot虚拟机对象探秘:对象的创建: 检查new指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程 类加载检查通过后,将为新生对象分配内存。对象所需内存大小在类加载完成后便可完全确定。jvm为对象分配空间的方式有两种: 假设堆中内存是绝对工整的,所有被使用的内存都放在一边,空闲的...

2019-05-05 15:43:27 152

原创 java内存区域与内存溢出异常笔记(一)

一、概述:java在虚拟机自动内存管理机制的帮助下,不需要像C/C++那样为每一个new的对象去写配对的delete/free代码,不容易出现内存泄漏和内存溢出问题。不过,正是因为java把内存控制的权力交给了java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那么排查错误将会成为一项艰难的工作二、运行时数据区域:java虚拟机在执行java程序的...

2019-05-04 22:05:45 439

空空如也

空空如也

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

TA关注的人

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