自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

zjg

记录日常学习心得,期待与大家共同成长

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

原创 【第13章】SpringBoot之SpringBootAdmin服务监控(下)

Spring Boot Admin 是一个用于管理和监控基于 Spring Boot 应用程序的开源项目。它提供了图形界面,允许你查看所有注册的应用程序的状态、环境属性、日志、度量标准、线程转储等,对于监控和诊断生产环境中的 Spring Boot 应用程序非常有用。回到顶部官方源码现在我们就可以从界面上观察我们的应用了,Spring Boot Admin功能非常强大,可以使我们更加方便地观察应用的执行情况和资源占用信息等等,后续可以接入告警系统、邮件系统为我们的应用保驾护航。

2024-09-16 11:36:42 553

原创 【第12章】SpringBoot之SpringBootActuator服务监控(上)

SpringBootActuator是 Spring Boot 框架中的一个核心模块,它提供了生产级别的监控和管理功能,帮助开发者更好地理解和维护他们的 Spring Boot 应用。SpringBootActuator 模块通过暴露一系列端点(Endpoints),允许外部系统或开发者通过 HTTP、JMX 或 SSH 等方式访问和监控应用的内部状态。这些端点提供了丰富的信息,如健康检查、度量指标、环境属性、日志配置等,从而帮助开发者快速定位问题并进行优化。回到顶部。

2024-09-16 11:36:02 1065

原创 【第35章】Spring Cloud之Seata-Server快速入门

Seata 是阿里巴巴开源的分布式事务中间件,以高效并且对业务 0 侵入的方式,解决微服务场景下面临的分布式事务问题。Seata 是一款易于使用、高性能、开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。回到顶部官方网站项目源码参数配置安装已经完成了,接下来会陆续介绍客户端的使用。

2024-09-15 19:25:55 1027

原创 【第36章】Spring Cloud之Seata分布式事务

上一章我们已经搭建好了Seata服务端,这里我们根据官方案例来完成分布式事务。我们以传统电商购物系统作为案例,我们有4个服务分别是Business(商品服务)Storage(仓储服务)Order(订单服务)Account(帐户服务)回到顶部。

2024-09-15 19:25:21 990

原创 【第34章】Spring Cloud之SkyWalking分布式日志

前面已经完成了请求的链路追踪,这里我们通过SkyWalking来处理分布式日志;场景描述:我们有三个服务消费者,提供者和用户服务,三个服务都有自己的日志文件,但是我一个请求会贯穿三个服务,不能说我一个服务的日志文件挨个去找,这太麻烦了,如果有更多的服务呢,这时候代价会更大;SkyWalking为我们解决了这个问题,每当请求进来的时候会生成一个追踪ID(TID)回到顶部2024已过了大半,回望今年博客数量和质量突飞猛进,感觉学到了很多,也不算虚度吧。2024-09-08记。

2024-09-14 14:58:08 889

原创 【第33章】Spring Cloud之SkyWalking服务链路追踪

SkyWalking是一个开源的观测平台,专为微服务、云原生架构和基于容器(如Docker、Kubernetes等)的应用程序设计,提供分布式追踪、服务网格遥测分析、度量聚合和可视化的一体化解决方案。由国内开源爱好者吴晟开源并提交到Apache孵化器的项目,2019年4月从Apache基金会的孵化器毕业成为顶级项目。SkyWalking目前已经来到10的大版本,但是由于升级太快导致没有对应的中文文档,所以我们只做初步的使用,让SkyWalking为我们的项目展示图形化的服务链路拓扑图。

2024-09-14 14:57:33 1161

原创 【第32章】Spring Cloud之SpringBootAdmin服务监控

这里我们的目标是新增base-monitor服务添加Admin服务端,提供者和消费者服务添加Admin客户端,通过控制台可以监控提供者和消费者的一些指标信息。回到顶部。

2024-09-12 19:34:09 730

原创 【第31章】Spring Cloud之Sentinel控制台推送规则到Nacos

前面我们已经完成了通过nacos存储提供者流控配置文件,下面我们来接入Sentinel控制台推送规则到Nacos数据源。回到顶部使用Sentinel控制台+应用程序+Nacos,优点很明显,可视化配置+动态修改+持久化存储;使用控制台之后也有个缺点,簇点链路和流控规则不互通了,官方给的说法是注意簇点链路页面对话框需要自行改造,最简单的办法就是原来的路由也放开,一块用呗!没试,大家自己试吧~

2024-09-12 19:33:46 426

原创 【第30章】Spring Cloud之Sentinel动态规则扩展

之前我们定义的流控和熔断规则应用每次重启之后就丢失了,是因为在控制定义规则这些规则仅在内存态生效,应用重启之后,该规则会丢失,这就是规则推送的原始模式。规则推送分为 3 种模式,包括 “原始模式”、“Pull 模式” 和"Push 模式"。这里我们主要介绍官方推荐的 push 模式,结合Nacos来完成Sentinel规则的存储。Sentinel starter 整合了目前存在的几类 ReadableDataSource。

2024-09-11 19:48:04 805

原创 【第29章】Spring Cloud之Sentinel规则

这里我们先学习Sentinel的规则,为了后面的自定义持久化规则打下基础,这篇理论知识为主。Sentinel 的所有规则都可以在内存态中动态地查询及修改,修改之后立即生效。同时 Sentinel 也提供相关 API,供您来定制自己的规则策略。流量控制规则熔断降级规则、系统保护规则、来源访问控制规则 和 热点参数规则,这里的流量控制规则熔断降级规则是我们要了解和学习的重点。回到顶部通过 API 直接修改 (loadRules)通过 DataSource 适配不同数据源修改通过多种。

2024-09-11 19:47:35 896

原创 【第28章】Spring Cloud之Sentinel注解支持

上一章我们已经完成了对Sentinel的适配工作,这里来学习它的更多用法。@Service@Override回到顶部注意 blockHandler 函数会在原方法被限流/降级/系统保护的时候调用,而 fallback 函数会针对所有类型的异常。

2024-09-10 19:08:00 896

原创 【第27章】Spring Cloud之适配Sentinel

Spring Cloud Alibaba 默认为 Sentinel 整合了 Servlet、RestTemplate、FeignClient 和 Spring WebFlux。Sentinel 在 Spring Cloud 生态中,不仅补全了 Hystrix 在 Servlet 和 RestTemplate 这一块的空白,而且还完全兼容了 Hystrix 在 FeignClient 中限流降级的用法,并且支持运行时灵活地配置和调整限流降级规则。

2024-09-10 19:07:28 659

原创 【第26章】Spring Cloud之Sentinel适配API Gateway

route 维度:即在 Spring 配置文件中配置的路由条目,资源名为对应的 routeId自定义 API 维度:用户可以利用 Sentinel 提供的 API 来自定义一些 API 分组回到顶部我最开始的愿景是:网关作为流量的统一入口,在网关层面做统一的流控是最合适不过了。但是看到了官方的这句话Sentinel 网关流控默认的粒度是 route 维度以及自定义 API 分组维度,默认不支持 URL 粒度。

2024-09-09 22:18:19 936

原创 【第25章】Spring Cloud之Sentinel控制台详解

前面我们详细介绍了Sentinel控制台的安装过程,这里我们来了解各个菜单的功能作用。回到顶部更多启动配置项接下来会介绍更多Sentinel用法和实战经验,敬请期待,落之~

2024-09-09 22:17:39 574

原创 安装Redis Desktop Manager

redisdesktop是一款可视化的redis监控工具,使用它我们可以更方便地访问redis,就像Navicat相对于Mysql和Oracle一样。回到顶部官方文档通过我们就可以在Windows中通过界面操作Redis中的数据了,这样会方便不少安装包可能会下载比较慢,大家可以下载文章顶部附件。

2024-08-12 19:07:28 837

原创 JAVA浅克隆和深克隆

return age;回到顶部深度克隆的两种使用方式略有区别,大家可以根据自己的使用习惯来实践是检验真理的唯一标准。

2024-08-12 19:07:01 746

原创 【第24章】Spring Cloud之Sentinel控制台安装和启动

Sentinel 提供一个轻量级的开源控制台,它提供机器发现以及健康情况管理、监控(单机和集群),规则管理和推送的功能。这里,我们将会详细讲述如何通过简单的步骤就可以使用这些功能。到这里我们就已经完成了控制台的安装和使用,接下来我们使用客户端接入控制台;给我们的应用程序竖起一座坚固的护城河,就相当于我们应用程序的三峡大坝。回到顶部中文文档官方源码官方案例。

2024-08-10 08:10:22 744

原创 【第23章】Spring Cloud之微服务通用拦截器

前面我们讲述了通过网关层(Gateway)增加全局过滤器,完成了对服务的校验,确保服务的安全。但是我们把请求地址从,修改为,直接请求到提供者服务,还是可以拿到数据。什么阿猫阿狗都来访问我的接口,数据都被搞走了,那我饭碗岂不是要不保!上科技,不对!上狠活,还不对!上代码,做猛男!第一种是从网络层面,我们的服务一般会部署到Linux服务器,通过服务器防火墙或者网络管理员只对外开通网关的端口,这种方法的实现是最简单的。但是,服务器不只你一个系统在用,很多服务的话,就不太可控。

2024-08-10 08:09:45 526

原创 【第22章】Spring Cloud之Gateway集成Knife4j(下)

上一章已经完成了在网关层集成Knife4j,这里来做一些Knife4j常用功能的使用。定义路由,并将请求去掉一层前缀,真实请求为,完美解决spring:cloud:gateway:routes:filters:metadata:filters:回到顶部。

2024-08-09 19:08:22 702

原创 【第21章】Spring Cloud之Gateway集成Knife4j(上)

前面已经介绍了很多关于网关的博客了,当前的形势前后端分离已经是大势所趋,我们需要为前端提供后端接口的服务,面对众多的后端微服务程序我们如果一个应用一份文档,这是复杂且难以维护的,那没有没一款框架能帮我们帮各个微服务程序的文档聚合到一个程序呢?有,它就是:Knife4j,接下来我们学习怎么使用和整合文档到网关服务中。注意我这里使用的注册中心是nacos和eureka略有区别建议大家避免使用,尽量使用和等Rest风格的注解回到顶部官方网站官方文档项目源码示例代码网关聚合。

2024-08-09 19:07:54 949

原创 【第20章】Spring Cloud之Gateway请求日志记录(请求和响应报文)

上一章我们增加了Logback配置,这里我们来记录请求和响应的报文日志,进一步完善我们的微服务网关。回到顶部官方也提供了对请求日志记录的支持,请查看微服务的网络请求是复杂的,有时候一个请求可能会串联多个服务,后面会通过链路追踪的方式来观察和分析一个请求的生命周期,敬请期待,落之。

2024-08-08 19:05:37 1208

原创 【第19章】Spring Cloud之Gateway自定义Logback配置

网关层作为我们程序的主入口,有着至关重要的作用,下面我们通过自定义Logback配置增强网关层的日志输出,为我们的网关提供更加详细和更加细化的日志输出。大家有没有好奇过一件事,为什么我们的Spring Boot项目新建完,日志组件就能刷刷地打印呢?这是因为Spring Boot帮助我们集成了Logback并定义了默认的logger和appender,接下来我们来进行详细的解析。我们自定义配置生效后,Spring Boot内置配置就不再生效,大家要知道这点。

2024-08-08 19:05:06 1006

原创 【第18章】Spring Cloud之Gateway配置

我们可以通过官方提供的配置,让我们的系统更加地灵活和健壮。回到顶部更多配置请查看。

2024-08-07 19:18:05 878

原创 【第17章】Spring Cloud之Gateway服务调用

在上一章我们使用JWT简单完成了用户认证,【第16章】Spring Cloud之Gateway全局过滤器(安全认证),上一章内容已经太多了,这里单独抽一章出来做个优化,前面的全局过滤器只针对登录接口的用户名密码做了简单校验,这里我们增加网关服务对用户服务的调用,参数检验完成之后我们调用用户服务的用户是否存在接口做判断,用户存在,则继续执行登录接口,不存在则返回错误信息。回到顶部到这里我们就完成了在网关服务中对其他服务的调用和处理,不要走开,后面的内容更精彩!!!

2024-08-07 19:16:47 707

原创 【第16章】Spring Cloud之Gateway全局过滤器(安全认证)

我们已经接入了网关,所有的外部访问需要通过网关才能访问到我们的微服务,这一章我们在网关层进行统一的安全认证,保障服务安全和数据安全。在前面的的【第3章】SpringBoot实战篇之登录接口(含JWT和拦截器)已经实现了对用户身份的认证,思路是差不多的,我们这里通过网关层的过滤器来简单实现下。

2024-08-06 19:21:15 1105

原创 【第15章】Spring Cloud之Gateway网关过滤器(URL黑名单)

上一章我们通过,路由断言根据请求IP地址的黑名单功能,作用范围比较大。这一章,我们通过网关过滤器来实现特定请求url的黑名单功能,作用范围进一步细化到接口。上一章我们使用的是提供者服务,这里就使用消费者服务,配置看起来会更加直观。

2024-08-06 19:20:45 1032

原创 【第14章】Spring Cloud之Gateway路由断言(IP黑名单)

Spring Cloud Gateway可以让我们根据请求内容精确匹配到对应路由服务,官方已经内置了很多路由断言,我们也可以根据需求自己定义,RemoteAddrRoutePredicateFactory就像是根据IP去匹配的白名单,接下来我们根据它来自定义一个IP黑名单。import io/**= null) {//能匹配到则在黑名单中,不再执行 } } } return true;} };if(!

2024-08-05 19:11:50 625

原创 【第13章】Spring Cloud之Gateway全局异常处理

网关作为我们对外服务的入口起着至关重要的作用,我们必须保证网关服务的稳定性,下面来为网关服务增加异常处理机制。回到顶部。

2024-08-05 19:11:16 659

原创 【第12章】Spring Cloud之集成 Spring Cloud Gateway

Spring Cloud Gateway是一个基于Spring Framework 5、Spring Boot 2和Project Reactor等技术构建的API网关服务器,旨在为微服务架构提供简单且有效的路由管理方式和一系列网关功能。回到顶部通过整合Spring Cloud Gateway统一后端服务的入口,在网关层进行统一的安全认证,降低微服务系统的复杂性。

2024-07-22 19:11:50 1516

原创 【第11章】Spring Cloud之Nacos自定义配置

自定义配置主要包含两个方面,一个是通用配置,另一个是扩展配置。回到顶部官方文档这两种用法给我的感觉是差不多,主要是应对不同的使用场景。

2024-07-22 19:10:39 1005

原创 【第10章】Spring Cloud之Nacos动态配置

这一章我们通过两个案例来学习Nacos动态配置,通过在控制台修改服务端配置文件值,并查看配置的变化。回到顶部Amazing,这极大地增加了程序的灵活性,不是吗?它可以用来动态控制业务逻辑,动态控制日志级别,动态调整规则等等。你可以通过配置来关闭动态刷新。

2024-07-20 10:10:03 755

原创 【第9章】Spring Cloud之Nacos服务配置

这是我们之前服务注册和发现时使用的两个服务,在application.yml定义了服务注册的一些配置信息回到顶部到这里基本配置就完成了,只保留了端口号和的基础配置信息,像服务发现配置信息已经通过控制台外部化,下一章来演示配置的动态更新。

2024-07-20 10:09:07 503

原创 【第8章】Spring Cloud之Nacos服务配置准备

Nacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。使用 Spring Cloud Alibaba Nacos Config,您可以在 Nacos Server 集中管理你 Spring Cloud 应用的外部属性配置。

2024-07-19 19:14:15 891

原创 【第7章】Spring Cloud之Nacos服务调用传递对象

上一章我们在微服务内部完成了服务调用,但是传递和响应的都是字符串,实际上很多场景需要传递对象过来,这时候我们需要通过公共模块去实现了。/**list . add(new System(1L , "Windows" , "微软" , 1 , "PC"));list . add(new System(3L , "IOS" , "苹果" , 1 , "PHONE"));

2024-07-19 19:13:50 509

原创 【第6章】Spring Cloud之Nacos服务调用(含RestTemplate 和 OpenFeign)

本章我们通过RestTemplate 和 OpenFeign来完成微服务中消费者对提供者服务的远程调用。回到顶部。

2024-07-18 19:33:29 561

原创 【第5章】Spring Cloud之Nacos服务注册和服务发现

回到顶部中文文档官方案例。

2024-07-18 19:32:57 1165

原创 【第4章】Spring Cloud之Nacos单机模式支持mysql

在0.7版本之前,在单机模式时nacos使用嵌入式数据库实现数据的存储,不方便观察数据存储的基本情况。安装数据库,版本要求:5.6.5+初始化mysql数据库,数据库初始化文件:mysql-schema.sql修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql),添加mysql数据源的url、用户名和密码。回到顶部mysql安装请查看。

2024-07-17 19:59:46 802

原创 【第3章】Spring Cloud之Nacos服务端权限认证

上一章我们访问了控制台,这里为了安全我们开启Nacos的权限认证。自定义密钥自定义密钥时,推荐将配置项设置为Base64编码的字符串,且原始密钥长度不得低于32字符。### 2.1.0 版本后注意:鉴权开关是修改之后立马生效的,不需要重启服务端。动态修改token.secret.key时,请确保token是有效的,如果修改成无效值,会导致后续无法登录,请求访问异常。生成密钥//输出回到顶部更多内容请查看官网服务鉴权。

2024-07-17 19:58:38 1304

原创 【第2章】Spring Cloud之Nacos服务端安装

Nacos 通过提供简单易用的动态服务发现、服务配置、服务共享与管理等服务基础设施,帮助用户在云原生时代,在私有云、混合云或者公有云等所有云环境中,更好的构建、交付、管理自己的微服务平台,更快的复用和组合业务服务,更快的交付商业创新的价值,从而为用户赢得市场。回到顶部官方网站官方文档项目源码项目说明。

2024-07-16 19:11:54 356

原创 【第1章】Spring Cloud之项目搭建

这里我们需要先搭建一个父工程,用于管理依赖版本及子工程信息。回到顶部项目已经搭建完成,是不是很简单,接下来我们来学习Nacos的使用。

2024-07-16 19:11:25 247

第36章Spring Cloud之Seata分布式事务

seata-server

2024-09-15

第31章Spring Cloud之Sentinel控制台推送规则到Nacos

第31章Spring Cloud之Sentinel控制台推送规则到Nacos

2024-08-31

第29章Spring Cloud之Sentinel规则

sentinel各种规则文件

2024-08-29

第20章Spring Cloud之Gateway自定义Logback配置

Loback配置文件

2024-08-03

Redis Desktop Manager

安装包

2024-08-01

第21章MyBatis-Plus多数据源支持

第21章MyBatis-Plus多数据源支持

2024-07-04

第3章SpringBoot整合Log4j2

第3章SpringBoot整合Log4j2

2024-05-23

第21章spring-mvc之缓存

第21章spring-mvc之缓存

2024-05-14

第12章Mybatis之SqlSession

mybatis-config.xml

2024-05-12

第9章Mybatis映射篇之结果映射

第9章Mybatis映射篇之结果映射

2024-05-11

第19章spring-mvc之全局异常处理

第19章spring-mvc之全局异常处理

2024-05-05

第18章spring-mvc之国际化(i18n)

第18章spring-mvc之国际化(i18n)

2024-05-04

第12章spring-mvc自定义类型转换器

第12章spring-mvc自定义类型转换器

2024-05-01

第11章spring-mvc默认转换器

第11章spring-mvc默认转换器

2024-05-01

第5章spring-mvc请求映射处理

RequestMapping测试案例

2024-04-27

rabbitmq-server

rabbitmq-server

2023-12-31

chrome设置编码插件: chrome://extensions/

chrome设置编码插件: chrome://extensions/

2022-09-18

Eclipse快捷键导入IDEA

Eclipse快捷键导入IDEA

2022-06-18

JDK1.8_32.zip

JDK1.8 32位

2022-06-15

空空如也

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

TA关注的人

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