
spring cloud
原来是小别扇
这个作者很懒,什么都没留下…
展开
-
SpringCloud(21) —— SpringCloud总结和展望
1.总结SpringCloud2.后期怎么学习框架源码设计模式新的知识探索/学习【新技术】Java版本的新特性框架底层HTTP、TCP/IP原理和源码JVM[参考书:深入理解Java虚拟机]数据结构与算法原创 2020-10-17 16:15:22 · 328 阅读 · 1 评论 -
SpringCloud(20) —— Config:远程配置实战测试
在前一篇博客中,我们分别创建了两个子model:springcould-config-server-3344和springcould-config-client-3355用来作为spring cloud config分布式配置中心的服务端和客户端,我们已经实现了通过服务端连接远程仓库,通过客户端连接服务端实现读取远程仓库中配置文件的功能但是在实际的开发中,我们应该将我们编写的服务提供者、消费者和注册中心的配置放在远程仓库,并将它们作为config的客户端去访问远程仓库中的配置文件,这样就实现了配置和编码.原创 2020-10-17 15:36:12 · 325 阅读 · 0 评论 -
SpringCloud(19) —— Config:服务端连接Git配置和客户端连接服务端访问远程仓库实现
在学习spring cloud的时候我们就说了,它是一个C/S架构,所以我们至少写两个服务,一个是server,一个是client1.spring cloud config 服务端实现先创建server模块:springcould-config-server-3344导入依赖<dependencies> <!--config--> <dependency> <groupId>org.springframework.c.原创 2020-10-17 12:57:05 · 422 阅读 · 0 评论 -
SpringCloud(18) —— Config:Git环境搭建
1.Spring Cloud Config 分布式配置1.概述1.分布式系统面临的–配置文件问题微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的微服务,由于每个微服务都需要必要的配置信息才能运行,所以一套集中式的,动态的配置管理设施是必不可少的。spring cloud提供了config Server来解决这个问题,我们每一个微服务自己带着一个application.yml,那上百个的配置文件修改起来,令人头疼!2.什么是SpringCloud原创 2020-10-17 09:43:03 · 278 阅读 · 0 评论 -
SpringCloud(16) —— Zuul:路由网关
目录1.什么是zuul2.zuul的功能3.入门案例4.使用zuul隐藏真正提供服务的服务提供者注册的服务的名称5.小结1.什么是zuulZull包含了对请求的路由(用来跳转的)和过滤两个最主要功能其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础,而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验,服务聚合等功能的基础Zuul和Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他服务的消息,也即以后的访问微服原创 2020-10-16 23:13:57 · 296 阅读 · 0 评论 -
SpringCloud(15) —— Hystrix:Dashboard流监控
目录1.什么是Hystrix Dashboard2.Hystrix Dashboard入门案例3.小结1.什么是Hystrix DashboardHystrix提供了对于微服务调用状态的监控信息,但是需要结合spring-boot-actuator模块一起使用Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command实时的请求响应时间, 请求成功率等数据,可以帮助我们快速发现系统中存原创 2020-10-16 16:20:22 · 379 阅读 · 0 评论 -
SpringCloud(14) —— Hystrix:服务降级
注意:上一篇博客讲的服务熔断只是Hystrix的一种作用,它还有很多作用,不要把它仅仅限制于做服务熔断,这篇博客就讲一讲通过Hystrix实现服务降级目录1.什么是服务降级2.入门案例3.小结4.对比服务熔断和服务降级1.什么是服务降级服务降级是指当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心业务正常运作或高效运作。说白了,就是尽可能的把系统资源让给优先级高的服务资源有限,而请求是无限的。如果在并发高..原创 2020-10-16 09:53:07 · 333 阅读 · 0 评论 -
SpringCloud(13) —— Hystrix:服务熔断
目录1.分布式系统面临的问题2.服务雪崩3.什么是Hystrix?4.Hystrix的作用5.服务熔断1.什么是服务熔断2.入门案例3.显式提供服务的服务器的IP4.小结1.分布式系统面临的问题复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免失败!2.服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其他的微服务,这就是所谓的“扇出”,如果扇出的链路上某个微服务的调用响应时间过长,或者不可用,对微服务A的调用就会占原创 2020-10-16 00:35:34 · 426 阅读 · 0 评论 -
SpringCloud(12) —— Feign:使用接口方式调用服务
1.Feign简介Feign是声明式Web Service客户端,它让微服务之间的调用变得更简单,类似controller调用service。SpringCloud集成了Ribbon和Eureka,可以使用Feigin提供负载均衡的http客户端只需要创建一个接口,然后添加注解即可使用FeignFeign,主要是社区版,大家都习惯面向接口编程。这个是很多开发人员的规范。调用微服务访问两种方法微服务名字 【ribbon,即前面我们使用ribbon实现负载均衡的时候选中哪一个服务集群是依据注册中心原创 2020-10-15 21:57:52 · 69962 阅读 · 9 评论 -
SpringCloud(11) —— Ribbon:自定义负载均衡算法
在上一篇博客中我们测试了ribbon的默认负载均衡算法,就是轮询,但是我们还可以自定义它的负载均衡算法,代替它的默认轮询算法原创 2020-10-15 13:01:36 · 712 阅读 · 0 评论 -
SpringCloud(10) —— Ribbon:使用Ribbon实现负载均衡
在上一篇博客中,我们只是在消费者端集成了ribbon,但是并没有明显的感受到ribbon的作用,原因是因为我们的服务提供者只有一个,不是集群,ribbon不能进行负载均衡,所以为了测试ribbon的功能,我们需要实现服务提供者的集群现在已有的服务提供者端口为8001,扩展两个服务提供者8002和8003,但是需要注意:前面在编写服务消费者的时候虽然模块名称上写的是80端口,但是在实际使用的时候发现80端口已经被占用,所以改成使用其他端口,就改成了8002端口,这就和下面要实现的一个注册服务提供者的端口冲.原创 2020-10-14 21:17:40 · 336 阅读 · 0 评论 -
SpringCloud(9) —— Ribbon:负载均衡及Ribbon
目录1.Ribbon是什么?2.Ribbon的作用3. 集成Ribbon4.小结1.Ribbon是什么?Spring Cloud Ribbon 是基于Netflix Ribbon 实现的一套 客户端 负载均衡 的工具3个关键词,表明了Ribbon 是与客户端相关的,所以我们在使用它的时候需要在客户端的中使用;并且它是实现客户端负载均衡的一个工具;对于负载均衡就是对于集群技术中每个站点使用不均衡的情况,简单的解决办法可以使用轮询解决集群中的服务器均摊客户端请求,除了使用轮询我们还可以使用h原创 2020-10-14 17:47:03 · 366 阅读 · 0 评论 -
SpringCloud(8) —— Eureka:CAP原则及对比zookeeper
目录1.CAP原则2.ACID是什么?3.CAP是什么?4.CAP理论的核心5.作为分布式服务注册中心,Eureka比Zookeeper好在哪里?1.CAP原则RDBMS (MySQL\Oracle\sqlServer) ===> ACID【关系型数据库遵循的特性】NoSQL (Redis\MongoDB) ===> CAP【非关系型数据库遵循的特性】2.ACID是什么?A (Atomicity) 原子性C (Consistency) 一致性I (Isolation) 隔原创 2020-10-14 17:40:04 · 538 阅读 · 1 评论 -
SpringCloud(7) —— Eureka:集群环境配置
目录1.环境准备2.代码实现3.小结1.环境准备这里我们实现的是注册中心的集群配置,比如这里我们实现3个注册中心由于是实现集群,所以基本都只需要复制粘贴,修改对应端口即使投入使用首先导入3个集群的依赖,保持相同<!--eureka依赖--><dependencies> <!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-eureka-原创 2020-10-14 00:01:56 · 382 阅读 · 0 评论 -
SpringCloud(6) —— Eureka:服务注册-信息配置-自我保护机制
目录1.服务注册2.信息配置3.自我保护机制4.扩展:服务发现 DiscoveryClient1.服务注册我们首先将前面写的服务提供者提供的服务注册到eureka注册中心中去我们需要明白,作为注册中心它应该是被动的接收提供者需要注册的服务,而不是主动的去发现服务者提供了哪些服务,所以要将服务注册到注册中心中去,我们需要在服务者的微服务模块中进行注册首先,在服务提供者的model中导入eureka的依赖:Spring Cloud Starter Eureka,用于和eureka server连接并原创 2020-10-13 21:55:15 · 445 阅读 · 0 评论 -
SpringCloud(5) —— Eureka:什么是Eureka
1.什么是Eureka读音Netflix在涉及Eureka时,遵循的就是API原则.Eureka是Netflix的有个子模块,也是核心模块之一。Eureka是基于REST的服务,用于定位服务,以实现云端中间件层服务发现和故障转移,服务注册与发现对于微服务来说是非常重要的,有了服务注册与发现,只需要使用服务的标识符,就可以访问到服务,而不需要修改服务调用的配置文件了,功能类似于Dubbo的注册中心,比如Zookeeper2.原理理解1.Eureka基本的架构Springcloud 封装了原创 2020-10-13 16:53:45 · 680 阅读 · 0 评论 -
SpringCloud(4) —— Rest学习环境搭建:服务消费者
目录1.环境搭建2.代码实现3.对比dubbo+zookeeper和spring cloud实现服务注册与发现1.环境搭建再创建一个子model导入依赖,不需要连接数据库,所以只需要实体类+web的依赖即可<dependencies> <!--实体类dept--> <dependency> <groupId>com.thhh</groupId> <artifactId>sprin原创 2020-10-12 18:45:19 · 411 阅读 · 0 评论 -
SpringCloud(3) —— Rest学习环境搭建:服务提供者
1.总体介绍我们会使用一个Dept部门模块做一个微服务通用案例Consumer消费者(Client)通过REST调用Provider提供者(Server)提供的服务回顾Spring,SpringMVC,Mybatis等以往学习的知识Maven的分包分模块架构复习一个简单的Maven模块结构是这样的:-- app-parent: 一个父项目(app-parent)聚合了很多子项目(app-util\app-dao\app-web...) |-- pom.xml | |-- app-co原创 2020-10-12 16:15:47 · 613 阅读 · 2 评论 -
SpringCloud(2) —— SpringCloud入门概述
目录1.什么是SpringCloud2.SpringCloud和SpringBoot的关系3.Dubbo和SpringCloud技术选型4. SpringCloud的作用5.SpringCloud下载1.什么是SpringCloud官网Spring Cloud provides tools for developers to quickly build some of the common patterns in distributed systems (e.g. configuration ma原创 2020-10-11 22:59:05 · 451 阅读 · 0 评论 -
SpringCloud(1) ——回顾微服务和微服务架构
1.什么是微服务微服务(Microservice Architecture) 是近几年流行的一种架构思想,关于它的概念很难一言以蔽之究竟什么是微服务呢?我们在此引用ThoughtWorks 公司的首席科学家 Martin Fowler 于2014年提出的一段话就目前而言,对于微服务,业界并没有一个统一的,标准的定义但通常而言,微服务架构是一种架构模式,或者说是一种架构风格,它提倡将单一的应用程序划分成一组小的服务,每个服务运行在其独立的自己的进程内,服务之间互相协调,互相配置,为用户提供最终价值原创 2020-10-11 21:56:24 · 545 阅读 · 0 评论 -
SpringCloud(0) —— 为什么要学习SpringCloud
目录1.回顾前面学习的知识点2.学习SpringCloud的基础3.为什么要学习SpringCloud1.MVC三层架构1.MVC三层架构2.简化MVC三层架构的Spring3.简化Spring的SpringBoot2.新的架构:微服务架构1.为什么需要新的架构2.什么是微服务架构3.微服务架构的需要解决的问题4.微服务架构问题解决办法/方案1.SpringCloud NetFilx(第一套SpringCloud生态)2.Apache Dubbo zookeeper(第二套SpringCloud生态)3.S原创 2020-10-07 14:28:30 · 927 阅读 · 0 评论