黑马【微服务技术栈】【MQ】
文章平均质量分 70
MQ
来世做春风嘛
文章大部分是自己的学习记录,最主要的目的是方便自己查阅复习。谢谢大家的收藏和点赞。
展开
-
微服务技术栈(八) - Docker(初识)
一、初识Docker大型项目组件较多,运行环境也较为复杂,部署时会碰到一些问题:1. 依赖关系复杂,容易出现兼容性问题2. 开发、测试、生产环境有差异Docker如何解决依赖的兼容问题的?1. 将应用的Libs(函数库)、Deps(依赖)、配置与应用一起打包,形成可移植镜像2. 将每个应用放到一个隔离容器去运行,相互隔离Docker如何解决不同系统环境的问题?1. Docker将用户程序与所需要调用的系统(比如Ubuntu)函数库一起打包2.Docker镜像中.原创 2021-10-27 15:24:13 · 153 阅读 · 0 评论 -
微服务技术栈(十一) - MQ(SpringAMQP)
一、什么是AMQPSpringAmqp的官方地址:https://spring.io/projects/spring-amqp二、Basic Queue 简单队列模型总结:1. 什么是AMQP?应用间消息通信的一种协议,与语言和平台无关。2. SpringAMQP如何发送消息? (1)引入amqp 的starter 依赖 (2)配置RabbitMQ 地址 (...原创 2021-11-04 22:19:06 · 1131 阅读 · 0 评论 -
微服务技术栈(五) - SpringCloud(Nacos 配置管理)
一、统一配置管理 配置更改热更新配置步骤:配置获取的步骤:将配置交给Nacos管理的步骤:(1)在Nacos 中添加配置文件(2)在微服务中引入nacos 的config 依赖(3)在微服务中添加bootstrap.yml,配置nacos 地址、当前环境、服务名称、文件后缀名。这些决定了程序启动时去nacos读取哪个文件二、配置自动刷新Nacos中的配置文件变更后,微服务...原创 2021-10-26 22:58:15 · 148 阅读 · 0 评论 -
微服务技术栈(三) - SpringCloud(Ribbon 负载均衡)
负载均衡流程负载均衡策略负载均衡规则通过定义IRule 实现可以修改负载均衡规则,有两种方式:(1)代码方式:在order-service中的OrderApplication类中,定义一个新的IRule(order-service 全局配置): @Bean public IRule randomRule() { return new RandomRule(); }(2)配置文件方式:在order-servi...原创 2021-10-25 17:24:52 · 172 阅读 · 0 评论 -
微服务技术栈(四) - SpringCloud(Nacos 注册中心)
Nacos 是阿里巴巴的产品,现在是SpringCloud 中的一个组件。相比Eureka 功能更加丰富,在国内受欢迎程度较高。Nacos服务注册或发现(1)引入nacos.discovery依赖(2)配置nacos地址spring.cloud.nacos.server-addrNacos 服务分级存储模型(1)一级是服务,例如userservice(2)二级是集群,例如杭州或上海(3)三级是实例,例如杭州机房的某台部署了userservice...原创 2021-10-25 18:58:36 · 469 阅读 · 0 评论 -
微服务技术栈(七) - SpringCloud(统一网关Gateway)
一、Gateway 入门网关的作用:(1)对用户请求做身份认证、权限校验(2)将用户请求路由到微服务,并实现负载均衡(3)对用户请求做限流二、搭建网关服务网关搭建步骤: (1)创建项目,引入nacos服务发现和gateway依赖(2)配置application.yml,包括服务基本信息、nacos地址、路由路由配置包括:(1)路由id:路由的唯一标示(2)路由目标(uri):路由的目标地址,http代表固定地址,lb代表根据服务名负载均衡...原创 2021-10-27 13:03:54 · 171 阅读 · 0 评论 -
微服务技术栈(一) - 认识微服务
微服务技术对比企业需求SpringCloud SpringCloud 集成了各种微服务功能组件,并基于SpringBoot 实现了这些组件的自动装配,从而提供了良好的开箱即用体验:原创 2021-10-25 12:54:36 · 106 阅读 · 0 评论 -
微服务技术栈(六) - SpringCloud(http客户端 Feign)
一、Feign 快速入门RestTemplate方式调用存在的问题Feign 介绍Feign是一个声明式的http客户端,其作用就是帮助我们优雅的实现http请求的发送,解决上面提到的问题。Feign的使用步骤(1)引入依赖(2)添加@EnableFeignClients 注解(3)编写FeignClient接口(4)使用FeignClient中定义的方法代替RestTemplate二、自定义 Fe...原创 2021-10-27 09:58:16 · 114 阅读 · 0 评论 -
微服务技术栈(二) - SpringCloud(Eureka 注册中心)
在Eureka 架构中,微服务角色有两类:(1)EurekaServer:服务端,注册中心 记录服务信息 心跳监控(2)EurekaClient:客户端 Provider:服务提供者 注册自己的信息到EurekaServer 每隔30秒向EurekaServer 发送心跳 consumer:服务消...原创 2021-10-25 16:55:32 · 94 阅读 · 0 评论 -
微服务技术栈(九) - Docker(基本操作)
一、镜像相关命令镜像名称一般分两部分组成:[repository]:[tag]。在没有指定tag时,默认是latest,代表最新版本的镜像镜像操作命令二、容器相关命令总结:docker run命令的常见参数有哪些?1. --name:指定容器名称2. -p:指定端口映射3. -d:让容器后台运行查看容器...原创 2021-10-27 19:28:44 · 93 阅读 · 0 评论 -
微服务技术栈(十) - MQ(RabbitMQ)
一、同步通讯1. 同步调用的问题同步调用的优点: 时效性较强,可以立即得到结果微服务间基于Feign 的调用就属于同步方式,存在一些问题。二、异步通讯异步调用方案:事件驱动优势:优势一:服务解耦优势二:性能提升,吞吐量提高优势三:服务没有强依赖,不担心级联失败问题优势四:流量削峰异步通信的缺点:1. 依赖于Broker的可靠性、安全性、吞吐能力2. 架构复杂了,...原创 2021-10-29 11:47:35 · 780 阅读 · 0 评论 -
SpringBoot 监听机制
一、ApplicationContextInitializer二、SpringApplicationRunListener三、CommandLineRunner四、ApplicationRunner原创 2022-11-11 00:31:06 · 211 阅读 · 0 评论 -
SpringBoot 自动配置
一、Condition二、切换内置web服务器三、@Enable*注解四、@Import注解五、@EnableAutoConfiguration 注解原创 2022-11-10 21:24:33 · 92 阅读 · 0 评论 -
SpringBoot(三) - SpringBoot 整合其他框架
一、SpringBoot整合Junit二、SpringBoot整合Redis三、SpringBoot整合MyBatis方式一:纯注解开发方式二:mapper 文件开发原创 2021-10-28 09:09:27 · 141 阅读 · 0 评论 -
SpringBoot(四) - SpringBoot 原理分析
一、SpringBoot 自动配置1.ConditionCondition 是在Spring 4.0 增加的条件判断功能,通过这个可以功能可以实现选择性的创建 Bean 操作。 (1)导入Jedis坐标后,加载该Bean,没导入,则不加载。(2)将类的判断定义为动态的。判断哪个字节码文件存在可以动态指定。Condition - 总结:1.自定义条件:(1...原创 2021-10-28 14:56:51 · 209 阅读 · 2 评论 -
SpringBoot(一) - SpringBoot 入门
一、SpringBoot 概述SpringBoot 提供了一种快速使用Spring 的方式,基于约定优于配置的思想。SpringBoot 功能(1)自动配置 SpringBoot 的自动配置是一个运行时(更准确地说,是应用程序启动时)的过程,考虑了众多因素,才决定Spring 配置应该用哪个,不该用哪个。该过程是SpringBoot 自动完成的。(2)起步依赖 起步依赖本质上是一个Maven 项目对象模型(POM),定义了对其他库的传递依...原创 2021-10-24 16:52:30 · 101 阅读 · 0 评论 -
SpringBoot(二) - SpringBoot 配置
一、配置文件分类 SpringBoot 是基于约定的,所以很多配置都有默认值,但如果想使用自己的配置替换默认配置的话,就可以使用application.properties 或者application.yml(application.yaml)进行配置。properties:server.port=8080yml:server: port: 8080小结:(1)SpringBoot 提供了2种配置文件类型(2)默认配置文件名称:app...原创 2021-10-24 17:10:10 · 113 阅读 · 0 评论 -
elasticsearch搜索功能(二)
一、DSL查询文档二、搜索结果处理三、RestClient查询文档四、黑马旅游案例原创 2023-01-20 21:45:49 · 1432 阅读 · 0 评论 -
elasticsearch基础(一)
一、初识elasticsearch二、索引库操作三、文档操作四、RestClient操作索引库五、RestClient操作文档原创 2023-01-03 21:38:01 · 543 阅读 · 0 评论 -
微服务保护
一、初识Sentinel二、流量控制三、隔离和降级四、授权规则五、规则持久化原创 2022-12-09 19:49:47 · 182 阅读 · 0 评论 -
MQ高级(四)MQ集群
一、集群分类二、普通集群三、镜像集群四、仲裁队列原创 2022-12-07 19:23:37 · 1853 阅读 · 0 评论 -
MQ高级(三)惰性队列
一、消息堆积问题二、惰性队列原创 2022-12-07 19:09:55 · 89 阅读 · 0 评论 -
MQ高级(二)死信交换机
一、初识死信交换机二、TTL三、延迟队列原创 2022-12-07 17:56:43 · 432 阅读 · 0 评论 -
MQ高级(一)消息可靠性
一、生产者消息确认二、消息持久化三、消费者消息确认四、消费失败重试机制原创 2022-12-07 17:20:00 · 628 阅读 · 0 评论 -
分布式缓存
一、Redis 持久化二、Redis 主从三、Redis 哨兵四、Redis分片集群原创 2022-11-20 23:09:34 · 806 阅读 · 0 评论 -
MQ(三)SpringAMQP
一、Basic Queue 简单队列模型二、Work Queue 工作队列模型三、发布( Publish )、订阅( Subscribe )模型原创 2022-11-18 15:12:17 · 142 阅读 · 0 评论 -
MQ(二)RabbitMQ快速入门
一、RabbitMQ 概述和安装二、常见消息模型三、快速入门原创 2022-11-17 15:18:03 · 744 阅读 · 0 评论 -
MQ(一)初识MQ
一、同步通讯二、异步通讯三、MQ常见框架原创 2022-11-17 14:34:38 · 135 阅读 · 0 评论