- 博客(36)
- 收藏
- 关注
原创 Spring Boot整合RabbitMQ——生产者发送确认
文章目录1. 生产者发送确认简介2. 事务消息机制2.1 原理2.2 快速搭建项目3. 发送方Confirm Callback机制3.1 原理3.2 快速项目搭建4. 发送方Return Callback机制4.1 原理4.2 快速项目搭建5. Return Callback与Confirm Callback的区别1. 生产者发送确认简介生产者发送消息真的成功到达rabbitmq broker服务节点了吗?默认情况下,生产者发送消息的方法没有任何返回信息,也就是说如果消息在发送broker节点的过程中由
2021-02-05 21:06:31
1283
原创 RabbitMQ 基本概念介绍
文章目录1. 什么是消息中间件2. 消息中间件的作用1. 什么是消息中间件消息队列中间件 (Message Queue Middleware,简称为 MQ) 是指利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。它们提供了基于存储和转发的应用程序之间的异步数据发送,即应用程序彼此不直接通信,而是与作为中介的消息中间件通信。消息中间件提供了有保证的消息发送,应用程序开发人员无须了解远程过程调用 ( RPC) 和网络通信协议的细节。2. 消息中间件的作用
2021-02-02 15:35:46
826
原创 RabbitMQ 常用命令
文章目录1. Vhost虚拟机2. 用户管理3. 权限管理4. 角色分配5. Web端管理6. Rabbitmq 实例管理7. 查看队列列表8. 查看交换器列表9. 查看绑定关系的列表10. 查看连接信息列表11. 查看信道列表12. 查看消费者列表1. Vhost虚拟机每个RabbitMQ服务器都能创建虚拟主机(virtual host),简称vhost。每个vhost本质上是一个独立的小型RabbitMQ服务器,拥有自己独立的队列、交换器及绑定关系等,并且它拥有自己独立的权限,RabbitMQ默认创
2021-02-01 17:31:08
1156
原创 Centos7 rpm方式安装RabbitMQ
文章目录1. rabbitmq与 erlang语言版本如何匹配2. 下载rabbitmq-server3. 下载erlang4. 安装1. rabbitmq与 erlang语言版本如何匹配rabbitmq与 erlang语言两者之间是存在版本对应关系的,详细可以参考官网文章:RabbitMQ Erlang Version Requirements2. 下载rabbitmq-serverrabbitmq-server下载地址:https://www.rabbitmq.com/download.htm
2021-01-28 10:20:19
507
原创 Spring Cloud Alibaba 服务限流容错 Sentinel 入门
文章目录1. Sentinel 介绍1.1 Sentinel的组成部分1.2 Sentinel的基本概念1.3 Sentinel的特征1.4 Sentinel的开源生态1.5 使用 Sentinel 的企业列表2. Sentinel控制台2.1 简介2.2 下载2.3 启动2.4 自定义启动配置3. Spring Cloud 整合Sentinel3.1 项目整合3.2 项目启动4. 流量控制4.1 概述4.2 示例1. Sentinel 介绍随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Se
2021-01-27 11:42:08
800
4
原创 Spring Cloud Alibaba 分布式事务 Seata 入门
文章目录1. seata 简介1.1 四种事务模式1.2 三个基本组件1.3 seata管理分布式事务的生命周期1. seata 简介Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。seata官网地址1.1 四种事务模式Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。AT 模式:提供无侵入自动补偿的事务模式,详细可参考《Seata AT 模式》官方文档TCC 模式:支持调用自定义的提交或
2021-01-21 15:24:39
665
2
原创 Spring boot 整合mybatis、mybatis-plus入门
文章目录1 mybatis 简介2 mybatis 功能架构3 spring boot整合mybatis3.1 项目搭建3.2 项目启动3.3 验证事务4 spring boot整合mybatis-plus1 mybatis 简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJO(普通的 J
2021-01-17 12:39:06
193
原创 IDEA clean 报错 Error running ‘mybatis-demo [clean]‘: No valid Maven installation found
今天使用IDEA进行Maven clean操作的时候发现报错了,如下图所示:根据错误提示,我点击[configuration dialog],仔细查看发现是我的IDEA里面的[Maven hone directory]设置错误了,正确设置后点击OK即可解决。再次点击Lifecyle下的clean,maven clean就成功了!...
2021-01-16 09:15:08
2586
原创 Spring Cloud 服务容错 Hystrix 入门
文章目录1 Hystrix 概述1.1 服务雪崩1.2 Hystrix简介1.3 Hystrix的特点2 Hystrix 快速使用3 Spring Cloud Hystrix 资源隔离3.1 线程池隔离3.2 信号量隔离4 Spring Cloud Hystrix 熔断机制5 Spring Cloud Hystrix请求缓存5.1 使用请求缓存5.2 移除请求缓存6 Spring Cloud Hystrix Dashboard 监控6.1 修改hystrix-demo项目暴露hystrix.stream端点
2021-01-13 00:25:28
275
2
原创 Spring Cloud Ribbon简介及使用入门
文章目录1. ribbon 简介2. ribbon 示例整体架构图3. ribbon 如何使用4. 自定义RestTemplate1. ribbon 简介Spring Cloud Ribbon是基于Netflix Ribbon实现的Http客户端负载均衡工具,可以轻松将REST模板请求自动转换成客户端负载均衡的服务调用,可以消除单个服务节点故障而造成的整个服务不可用,提高了服务的容错能力,可以提供高效、稳定、安全的服务。2. ribbon 示例整体架构图3. ribbon 如何使用pom文
2021-01-08 18:37:48
443
原创 Spring cloud入门系列文章 十三篇
1. Spring Cloud Eureka入门2. 服务注册中心Eureka高可用配置3. Spring Cloud Config 基于JDBC搭建配置中心4. Spring Cloud Openfeign 使用入门5. SpringCloud Gateway 使用入门6. SpringCloud Bus消息总线使用入门7. SpringCloud Stream 入门及进阶使用8. Spring Cloud Sleuth+Zipkin 链路追踪入门及进阶使用9. Spring cloud.
2021-01-07 14:28:56
125
原创 Spring cloud 集成swagger 在线文档入门
文章目录1. 为什么使用swagger2. 如何使用3. swagger的常用注解说明1. 为什么使用swagger随着互联网技术的不断发展,前端与后端开发已实现分离,而且它们正在各自的道路上越走越远;而api接口文档就成为了前后端开发人员沟通的纽带。在没有api文档工具之前,一般接口文档都使用word进行记录,但是手写文档维护起来特别麻烦,尤其是对于多次修改的接口,开发人员并没有即时更新文档容易出现文档与代码对不上。而swagger的出现就很容易解决上述的问题,它是一款很好用的在线api文档框架。
2021-01-07 14:10:04
198
原创 spring cloud sleuth+zipkin 链路追踪入门及进阶使用
文章目录1.Spring cloud sleuth简介2.为什么使用sleuth3.sleuth 核心原理及作用4.zipkin简介5.sleuth与zipkin的关系6.spring cloud sleuth+zipkin 入门使用6.1 zipkin server 服务搭建6.2 客户端增加sleuth相关配置6.3 启动各个微服务7.spring cloud sleuth+zipkin 进阶使用7.1 zipkin-server-demo项目修改7.2 sleuth各个客户端项目修改7.3 重新启动各
2021-01-06 16:31:50
670
3
原创 SpringCloud Stream 入门及进阶使用
1、什么是SpringCloud StreamSpring Cloud Stream是一个用于构建消息驱动的微服务应用程序的框架,它使用 Spring Integration 可以与多个消息代理建立连接,例如kafka、rabbitMQ等消息中间件。应用程序通过 Spring Cloud Stream 注入 input 和 output 通道,然后通道通过指定绑定抽象 Binder 实现与消息代理连接。所以,当需要切换消息中间件时,几乎不需要修改代码,只需要更改配置就可以完成。2、基本概念整体架构图如
2020-12-30 16:55:52
646
原创 SpringCloud Bus消息总线入门
SpringCloud Bus简介引用 Spring Cloud Bus 官方文档说明:Spring Cloud Bus links the nodes of a distributed system with a lightweight message broker. This broker can then be used to broadcast state changes (such as configuration changes) or other management instructi
2020-12-28 21:10:58
198
原创 Window下安装kafka
kafka的运行依赖jdk、zookeeper,jdk就不过多介绍了,现在先说一下zookeeper1、zookeeper下载、安装、运行可以从官网进行下载,选择清华大学镜像https://www.apache.org/dyn/closer.cgi/zookeeper/选择最新的版本解压缩下载的文件,进入conf目录里面,拷贝一份zoo_sample.cfg,然后修改文件名称为zoo.cfg。编辑zoo.cfg文件,修改数据存放的路径:dataDir=E:\\middleware\\z
2020-12-27 13:30:27
107
原创 SpringCloud Gateway 入门
什么是网关所有的客户端都通过网关统一接入微服务,在网关层处理所有的非业务功能。API 网关还提供了一些更高级的功能,例如:身份验证、监控、负载均衡、缓存、多协议支持、限流、熔断等等。网关请求流程gateway官方文档链接客户端向Spring Cloud Gateway发出请求。如果 Gateway Handler Mapping 检测到请求与路由相匹配,则将其发送到 Gateway Web Handler 进行处理。Gateway Web Handler 处理程序会将请求发送到过滤器链(f
2020-12-25 22:39:55
645
原创 spring cloud openfeign 使用入门
如下图所示,直接使用 ribbon+RestTemplate 完成微服务之间的方法调用存在一些问题,例如代码冗余、服务地址修改会增加维护成本等等,那有没有更优雅的方式呢?答案是肯定的,spring cloud提供了 openfeign 来帮我们解决上述的问题。SpringCloud OpenFeign 简介Spring Cloud OpenFeign 是声明式、模板化的HTTP客户端,可以更加便捷、优雅的调用HTTP API。它整合了 Ribbon 和 Eureka 以提供负载均衡的服务调用及基于 H
2020-12-23 10:43:32
468
2
原创 Spring Cloud Config:基于JDBC搭建配置中心
为什么使用配置中心每个微服务都有各种环境的配置,例如开发、测试、预生产、生产环境,通过配置中心可以集中进行管理与维护,同时还可以保证配置信息的安全性。特点Spring Cloud Config分为服务端与客户端两部分: - **服务端**:也称为分布式配置中心,是一个独立的微服务应用,用来连接配置仓库并为客户端提供获取配置信息的接口。 - **客户端**:是微服务架构中各微服务应用或基础设施,启动时从配置中心加载配置信息。...
2020-12-18 17:19:21
519
1
原创 spring boot Caused by: java.nio.charset.MalformedInputException: Input length = 1
主要异常信息:java.lang.IllegalStateException: Failed to load property source from 'file:/D:/MyProject/vip-springcloud/configserverdemo/target/classes/application.yml' (classpath:/application.yml) at org.springframework.boot.context.config.ConfigFileApplication
2020-12-18 13:25:11
523
原创 spring boot与spring cloud版本不匹配
今天在搭建注册中心Eureka的时候抛出异常了,经过尝试发现是spring boot与spring cloud的版本不匹配导致的。pom文件主要内容如下:<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.1</versi
2020-12-17 13:08:00
856
2
原创 spring boot整合mysql报错The server time zone value ‘�й���ʱ��‘ is unrecognized or represents more than
数据库连接驱动的maven依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.22</version></dependency>启动spring boot项目抛出异常信息如下:java.sql.SQLException: The se
2020-12-14 21:56:42
120
原创 IDEA里面的Search for class
在pom.xml文件里面使用快捷键Alt + Insert即可出现如下图:点击Dependency,切换到Search for class,可搜索spring-boot starter关键词并查看对应依赖的版本号,双击即可把对应依赖引入pom文件。
2020-12-13 14:05:23
2757
1
原创 服务注册中心Eureka高可用配置
spring cloud Eureka入门1、服务注册中心为什么要高可用配置?服务注册中心作为整个微服务系统的核心一旦发生故障必将会造成整个系统的瘫痪,因此需要保证服务注册中心的高可用。Eureka Server的高可用实际上就是将自己作为服务向其他服务注册中心注册自己,这样就可以形成一组互相注册的服务注册中心,以实现服务清单的互相同步,达到高可用的效果。2、搭建Eureka集群通过修改...
2020-03-17 21:01:21
220
原创 IntelliJ IDEA Found duplicate code
打开 Settings -> Editor -> Inspections 找到 “Duplicated Code” ,取消掉后面的钩钩,然后点击 Apply ,重启IDEA即可取消此提示。
2019-12-13 16:46:03
250
原创 mybatis异常:元素内容必须由格式正确的字符数据或标记组成
mybatis今天遇到一个异常Caused by: org.xml.sax.SAXParseException: 元素内容必须由格式正确的字符数据或标记组成。 at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:203) ...
2019-12-03 15:34:23
440
原创 spring boot多模块项目搭建
通常一个项目都是由多个子项目组成的,那么我们在搭建框架的时候当然希望在IDE中同时看到它们,以下就是springboot多模块项目搭建的过程。在介绍搭建流程之前先说一下将要搭建的框架所包含的模块:SpringbootDemo 父模块SpringbootEs 子模块1SpringbootKafka 子模块21.File—>New 创建Project一路next之后就创建...
2019-10-20 17:11:09
383
原创 spring boot + Java High Level REST Client7.3操作Es文档
ES文档数据的新增、更新、删除、批量导入、分页查询、查询结果聚合功能新增索引后默认的文档名称是_doc1、新增文档数据创建新增文档请求,设置数据内容,然后在设置一些可选参数,最后异步执行该请求/** * 新增单条文档数据 * * @param indexName 索引名称 * @param id * @throws Exception */public void crea...
2019-10-19 15:20:47
1739
原创 spring boot + Java High Level REST Client7.3操作Es索引
1、新增索引ES官网——新增索引文档// 获取Es连接RestHighLevelClient client = new RestHighLevelClient( RestClient.builder( new HttpHost(esConfig.getHostName(), esConfig.getPort(), "http")));值得注意的是索引名称必须小写,设置分片和副本数量...
2019-10-18 19:03:07
943
原创 spring boot 整合ES7.3
官方推荐使用REST Client的方式来操作ES,本质是操作ES暴漏出来的RESTful web接口基础环境jdk1.8spring boot2.1.7ES7.3maven pom文件内容<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" ...
2019-10-10 22:54:45
2238
原创 spring boot整合bootstrap、echart
bootstrap是非常优秀的前端框架 bootstrap中文网ECharts是由百度开源的纯 Javascript 的图表库,功能丰富、社区活跃、开源免费 ECharts官网该例子实现列表分页功能,点击详情弹出模态窗口,展示echart实现的折线图1.引入相关核心JavaScript文件<!-- Bootstrap核心CSS文件 --><link rel="sty...
2019-08-25 21:49:02
757
原创 spring boot允许跨域请求
Ajax发送请求时,浏览器出现这个错误,这是一个跨域请求的问题 from origin 'null' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource
2019-08-25 20:47:49
346
原创 cenos7 Nginx安装
cenos7 Nginx安装Nginx概述Nginx 是一款免费、开源、高性能的HTTP服务器,相较于 Apache、lighttpd 具有占有内存少,稳定性高等优势。2019年3月11号,Nginx被F5收购。nginx官网地址我们该如何看待 NGINX 被收购Nginx常用功能Nginx安装与配置1.安装nginx依赖库yum install gcc-c++yum inst...
2019-07-30 10:06:57
172
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人