
spring-cloud
文章平均质量分 82
cloud项目
拽着尾巴的鱼儿
The harder you work, the luckier you are
展开
-
面试篇-微服务-1-Spring-cloud+服务的主从与发现+服务雪崩+服务降级+服务熔断+服务限流+CAB和Base+分布式事务
你们项目中有使用过Spring-cloud 框架进行微服务的治理吗,你都用过Spring-Cloud 的哪些组件;你知道服务雪崩,服务降级,服务熔断吗;你们的服务限流措施怎么做的;你了解过CAB和BASE理论吗。本文重点对面试的问题进行介绍,祝愿每位程序员都能顺利上岸!!!本文对微服务架构下,常用的组件面试题进行总结。原创 2024-07-12 14:11:58 · 1119 阅读 · 0 评论 -
框架篇--springboot 客户端 整合& Nacos 版本问题
本文对 pringboot 客户端 整合Nacos 过程中出现的版本问题 进行记录;本文对 pringboot 客户端 整合Nacos 过程中出现的版本问题 进行记录;原创 2024-03-20 15:23:20 · 3510 阅读 · 0 评论 -
源码篇--SpringCloud-OpenFeign--http请求的发出
我们已经知道了feign 接口是通过FeignClientFactoryBean 来生成代理类的,那么一个真正的http 请求是如果进行构建的呢?原创 2024-01-12 15:36:21 · 1443 阅读 · 0 评论 -
源码篇--SpringCloud-OpenFeign--代理类的生成
我们知道SpringCloud-OpenFeign 是通过jdk 的动态代理为接口生成代理对象,从而由代理对象完成请求的访问,下面具体看下在Spring 中 是如何完成对接口的代理的;通常在启动类中我们需要添加 @EnableFeignClients 注解来开启feign 接口的扫描;Class<?Class<?Class<?原创 2024-01-12 15:36:04 · 1229 阅读 · 0 评论 -
工具篇--SpringCloud--openFeign--Feign.builder()自定义客户端
提示:本文springboot 版本 :2.7.16,spring-cloud-starter-openfeign 版本:3.1.5在项目中有时候我们既需要和本身集群内的微服务进行调用,也会和外部第三方的服务进行服务调用;原创 2024-01-09 15:02:31 · 3266 阅读 · 0 评论 -
工具篇--SpringCloud--openFeign--日志输出
在项目中当使用openFeign 调用远程接口,当接口联调时可能需要对feign 接口调用的情况进行日志打印。本文列举了在使用openFeign 怎么对日志的输出进行设置。原创 2024-01-04 15:56:27 · 4961 阅读 · 0 评论 -
工具篇--SpringBoot与SpringCloud 的版本对应关系&SpringBoot与JDK对应关系(官网文档解释)
通常我们创建springboot 项目时都会用的springcloud 框架对springboot 进行整合,所以此时就非常有必要了解他们之间的版本对应关系了,最准确的信息就需要到官网进行了解。本文按照Spring 的官网对-SpringBoot与SpringCloud 以及SpringBoot与JDK 的版本对应关系进行整理。原创 2024-01-04 15:55:09 · 9640 阅读 · 1 评论 -
工具篇--Spring-Cloud--feign 通过feign 接口完成文件的下载
通常在spring-boot 项目中,对于文件的下载都是直接调用到对应的服务中,而不是通过feign 接口获取文件;有时我们在对接外部接口时,因为权限等问题,不能直接暴露文件服务,会有一个专门对外的服务进行对接,但是我们又要利用现有的文件服务逻辑,此时可以考虑使用feign 完成文件的获取。本文通过feign 接口完成文件的下载。原创 2023-12-28 17:59:57 · 4059 阅读 · 1 评论 -
关于OpenFeign 接口参数定义的问题
在使用feign 接口进行远程或者内部服务间的方法调用时,有时会遇到明明声明了GET请求,但是feign 依然使用POST进行发送,或者使用GET 请求是明明已经放入了参数,依然提示参数值是空的,使用了异步线程调用feign 接口总是失效。提示:以下是本篇文章正文内容,下面案例可供参考本文对feign 接口在使用过程中遇到的常见问题,进行分析以及给出解决办法。原创 2023-09-18 17:55:18 · 718 阅读 · 0 评论 -
分布式事务篇-2.4 Spring-Boot整合Seata
在了解了Seata 的工作原理后,如何在springboot 项目中进行整合使用,本文进行阐述。提示:本文使用 seata 版本 :1.5;在整合之前 你需要先要部署seate 的服务本文通过springboot 项目整合seata 然后 通过 AT,XA,TCC 事务模式,模拟实现分布式事务。原创 2023-08-25 16:16:04 · 2875 阅读 · 1 评论 -
工具篇7--RocketMq消息模型介绍
作为一个国产的消息中间件,阿里参考Kafka 开发了RocketMq 进行消息通信,它具有分布式,高可用、高吞吐、可伸缩的特性,本文对于其模型进行探究;模型图中已经展示了RocketMq的几个重要组件,与kafka 不同的是这里多出了一个叫NameServer的组件;对broker 进行维护,并对消息消息进行路由;原创 2023-06-27 09:01:20 · 1795 阅读 · 0 评论 -
Idea+maven+springboot项目搭建系列--1 整合Rocketmq
Rocketmq 是一种基于发布-订阅(Pub/Sub)消息范式,消息的发送者(称为发布者、生产者、Producer)会将消息直接发送给特定的接收者(称为订阅者、消费者、Comsumer)。它在互联网公司、金融机构和其他大型企业中广泛使用。Producer (生产者)和Consumer(消费者),一个向topic 发送消息,一个向topic 读取消息,消息的基本单元由Message 承接;易于使用:RocketMQ使用简单,提供了丰富的客户端API和管理工具,使得开发人员可以快速地集成和使用它。原创 2023-05-30 09:32:24 · 1305 阅读 · 0 评论 -
分布式全局唯一id实现-4 springCloud-MyBatis-Plus集成美团分布式全局id(leaf)
使用雪花算法生成的id 也是由时间戳+机器位+序列号组成的64位数字id,其中值得注意的是workId,会在每次项目启动的使用先去zookeeper中,通过ip+port 组成的key 去获取是否已经注册过,如果已经注册过则直接使用,否则注册持久有序的节点,以此来保证workId 唯一性;前言:美团的leaf集成了db分段生成id和雪花算法生成分布式id,本文对其实现部分细节展开讨论,leaf 的具体实现请参考:https://tech.meituan.com/MT_Leaf.html;原创 2023-05-23 13:30:12 · 1426 阅读 · 0 评论 -
分布式全局唯一id实现-3 springCloud-MyBatis-Plus集成滴滴分布式全局id(Tinyid)
前言:滴滴通过mysql来定义好id 的初始值和增长的步长,每次可以将一段连续的数字id取出放入到内存中,当需要使用id 的使用,每次id+1 ,如果发现id 的值已经超出了改段最大的id 值,则取下个段的id 继续使用;通过 id 生成的方法 可以清楚的看到 如何通过余数控制 的生成:每次得到新的id段,都进入init 控制 初始值currentId 的生成。通过remainder 余数控制id 的生成,可以使得多台服务即使id段相同,但最终生成的id 是不重复的;TinyId生成id主键。原创 2023-05-23 13:29:51 · 966 阅读 · 0 评论 -
分布式全局唯一id实现-2.1 springCloud-MyBatis-Plus集成百度分布式全局id(uid-generator)--优化版
前言:在上一篇 springCloud-MyBatis-Plus集成百度分布式全局id, id的生成全部交予程序实现,虽然可以通过集群的方式来提高id 生成服务的高可用性,但是依然需要考虑极端情况,在id生成服务短时全部下线的情况下,依然不能影响其他的业务。实现方式思考:1 要想使得id 生成服务短时全部下线的情况下,依然可以稳定的提供全局id ,就必须要有一个中间的存储介质来进行过度;2 这个中间存储介质,需要保证:多线程并发安全问题生成的id 持久化高性能,高可用基于对中间存储介质的原创 2023-05-23 13:28:01 · 1125 阅读 · 0 评论 -
分布式全局唯一id实现-2 springCloud-MyBatis-Plus集成百度分布式全局id(uid-generator)
消费uid-generator实现思路:MyBatis-Plus在定义业务实体的主键时,可以通过type = IdType.ASSIGN_ID,实现MyBatis-Plus为业务实体使用雪花算法生成唯一主键,MyBatis-Plus默认通过DefaultIdentifierGenerator 类的nextId 方法完成id 的生成,那么只要我们覆盖原有的DefaultIdentifierGenerator 并重写nextId 方法就可以实现自定义id 的生成;以上参数均可通过Spring进行自定义;原创 2023-05-23 13:27:20 · 1647 阅读 · 0 评论 -
MyBatis-Plus多数据源dynamic-datasource解决多线程情境下数据源切换失效问题
MyBatis-Plus多数据源dynamic-datasource解决多线程情境下数据源切换失效问题原创 2023-04-23 16:15:18 · 11187 阅读 · 10 评论 -
Idea+maven+spring-cloud项目搭建系列--13 整合MyBatis-Plus多数据源dynamic-datasource
Idea+maven+spring-cloud项目搭建系列--13 整合MyBatis-Plus多数据源dynamic-datasource原创 2023-04-01 21:20:50 · 3348 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--12 整合grpc
Idea+maven+spring-cloud项目搭建系列--12 整合grpc原创 2023-03-10 16:07:05 · 1568 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--11-3 dubbo限流和熔断
Idea+maven+spring-cloud项目搭建系列--11-3 dubbo限流和熔断原创 2023-03-10 15:57:24 · 805 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--11-2 dubbo鉴权&日志记录&数据统一封装
Idea+maven+spring-cloud项目搭建系列--11-2 dubbo鉴权&日志记录&数据统一封装原创 2023-03-10 15:51:56 · 1103 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--11-1 dubbo(zookeeper,nacos)注册中心
Idea+maven+spring-cloud项目搭建系列--11-1 dubbo(zookeeper,nacos)注册中心原创 2023-03-10 15:44:38 · 651 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--11 整合dubbo
Idea+maven+spring-cloud项目搭建系列--11 整合dubbo原创 2023-03-10 15:22:35 · 1409 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--8整合Zookeeper
spring boot 整合Zookeeper原创 2022-11-28 17:05:00 · 1129 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--9整合OpenFeign
Idea+maven+spring-cloud项目搭建系列--9整合OpenFeign原创 2022-01-07 16:25:53 · 1403 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--8整合Kafka
前言:本文是建立在已整合nacos 的基础上进行的扩展,如需要整合Nacos 可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/121624988本文是建立在服务器已经部署Kafka的基础只上进行的整合,如需要部署Kafka可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/1220476591 Kafka 介绍:Spring for Apache Kafka (spring-kafka) 项目将原创 2021-12-20 19:39:03 · 1470 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--7整合Elasticsearch
前言:本文是建立在已整合nacos 的基础上进行的扩展,如需要整合Nacos 可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/1216249881 Es 介绍:Elasticsearch 是一个强大的开源搜索和分析引擎,可以让数据易于探索;2 Spring-cloud–整合ES:2.1 新建es spring-boot 项目作为ES服务2.1 pom 文件修改:(1) es服务pom 修改<?xml version="1.0原创 2021-12-14 16:02:46 · 733 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--6整合xxl-job
Idea+maven+spring-cloud项目搭建系列--6整合xxl-job原创 2021-12-14 16:02:32 · 1906 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--5整合redis
本位为 Idea+maven+spring-cloud项目搭建系列,maven项目的创建可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/121467823本文使用了nacos 作为微服务的注册与发现,nacos 阿里云服务器的安装可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/121421431nacos 服务端的配置和使用可以参考:https://blog.youkuaiyun.com/l123lgx.原创 2021-12-14 16:01:39 · 657 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--4整合mybatis-plus
参考:原创 2021-12-14 16:01:23 · 456 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--3整合Nacos
本文是在已经安装nacos 服务的基础只上进行的整合,docker 安转nacos 参考:https://blog.youkuaiyun.com/l123lgx/article/details/121421431nacos 配置及使用参考:https://blog.youkuaiyun.com/l123lgx/article/details/121491529本文是在Idea+maven+spring-cloud项目搭建系列–2gateway网关服务创建基础只上进行的整合,原文连接:https://blog.youkuaiyun.com.原创 2021-12-14 16:01:06 · 1611 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--2.1gateway网关路由,鉴权,日志记录
本文是建立在微服务中已经整合redis 的基础之上进行的处理,如果没有项目没有整合redis 可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/121521855本文是建立在spring-aop基础只上进行的处理,spring-aop切面参考文档:https://blog.youkuaiyun.com/l123lgx/article/details/1063993771 gateway 介绍:Route 路由:gateway的基本构建模块。它由ID、目标URI原创 2021-12-14 16:00:24 · 1597 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--2gateway网关服务创建
1 gateway网关服务作用:Gateway 旨在提供一种简单而有效的方式来路由到 API 并为它们提供交叉关注点;可以在此处进行服务的路由,网关的用户鉴权,日志记录,限流等。2 gateway网关服务创建:本文使用了nacos 作为微服务的注册与发现,nacos 阿里云服务器的安装可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/1214214312.1 新建springboot 项目:注意:下一步后,如果无法连接,则使用阿里的进行spi原创 2021-12-14 15:59:55 · 1731 阅读 · 0 评论 -
Idea+maven+spring-cloud项目搭建系列--1Maven项目创建
1 创建一个父类maven如果还没有安装maven可以参考:https://blog.youkuaiyun.com/l123lgx/article/details/121421914创建方式1:使用maven脚手架创建maven项目1)选择maven 项目:2)填入项目名称和项目坐标:注意:填入项目名称后,在项目路径下将项目名称也添加上:3)设置maven 地址:4)Fininsh 完成,因为maven-warehouse 是新创建的所以finish 后maven 会进行一定时间段的包下载:原创 2021-12-14 15:59:28 · 1165 阅读 · 0 评论 -
Spring-Cloud--Nacos服务端的配置和使用
参考文档:https://nacos.io/zh-cn/docs/concepts.html原创 2021-11-24 17:11:49 · 898 阅读 · 0 评论 -
spring-boot&cloud Websocket 使用
spring-boot&cloud Websocket 使用1 WebSocket介绍:WebSocket是HTML5新增的协议,它的目的是在浏览器和服务器之间建立一个不受限的双向通信的通道,比如说,服务器可以在任意时刻发送消息给浏览器。为什么传统的HTTP协议不能做到WebSocket实现的功能?这是因为HTTP协议是一个请求-响应协议,请求必须先由浏览器发给服务器,服务器才能响应这个请求,再把数据发送给浏览器。换句话说,浏览器不主动请求,服务器是没法主动发数据给浏览器的2 websock原创 2021-11-08 14:35:43 · 915 阅读 · 0 评论