![](https://img-blog.csdnimg.cn/20191106141132213.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
SpringCloud微服务架构
文章平均质量分 86
流放深圳
让天下没有难写的代码
展开
-
Eureka 实现安全认证
使用 SpringCloud 微服务,包括我们的服务消费者、服务提供者,在跟我们的服务注册中心注册时,需要增加验证。原创 2021-06-21 00:58:16 · 812 阅读 · 3 评论 -
Eureka 如何快速的、优雅的停止某个微服务
什么是优雅停服?就是微服务下线了,主动发一个请求告诉微服务注册中心 Eureka,然后注册中心就立即在服务列表剔除掉该服务。配置了优雅停服之后,将不需要 Eureka Server 中配置关闭自我保护。...原创 2021-06-21 00:09:16 · 1929 阅读 · 0 评论 -
SpringCloud Config 搭建分布式配置中心之第 2 篇 —— 基于消息总线 Bus 实时刷新配置(完结)
查看之前的博客可以点击顶部的【分类专栏】基于第一篇博客:https://blog.csdn.net/BiandanLoveyou/article/details/117737490什么是消息总线?在微服务架构中,通常会使用轻量级的消息代理来构建一个共用的消息主题来连接各个微服务实例,它广播的消息会被所有在注册中心的微服务实例监听和消费,也称消息总线。简单来说:消息总线其实通过消息中间主题模式,使用广播消息的机制被所有在注册中心微服务实例进行监听和消费。以广播形式将消息推送给所有注册...原创 2021-06-10 21:44:14 · 184 阅读 · 2 评论 -
SpringCloud Config 搭建分布式配置中心之第 1 篇 —— 简单入门篇
传统配置文件有什么缺点?在中小型的公司里,如果不使用分布式配置中心,当某个微服务需要修改配置文件(如果是修改代码的 bug 那必须要重新打包啦!),都需要重新打包发布,重新部署项目,而且每个环境(测试、线网)都要更新配置文件,很复杂,容易出错。什么是分布式配置中心?将配置文件注册到配置中心平台上,可以使用分布式配置中心实时的更新配置文件,方便统一管理,不需要重新打包发布。大型互联网公司自己内部都有自己独立分布式配置中心。常见的配置中心有:SpringCloud Config、...原创 2021-06-10 21:43:38 · 334 阅读 · 0 评论 -
系列学习安全框架 Security 之第 2 篇 —— 基于 RBAC 权限模型搭建企业级权限访问控制
本篇博客基于:https://blog.csdn.net/BiandanLoveyou/article/details/117400876先下载脚手架代码:https://pan.baidu.com/s/1c9IUUw3MhM1Pb-uIYAQNww提取码:8kcb什么是 RBAC 模型?基于角色的权限访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注。在 RBAC 中,权限与角色相关联,用户通过成为适当角色的成...原创 2021-06-01 00:27:17 · 504 阅读 · 1 评论 -
系列学习安全框架 Security 之第 1 篇 —— 认识 SpringSecurity
什么是 SpringSecurity?Spring Security 是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重复代码的工作。百度百科地址:htt..原创 2021-06-01 00:26:41 · 423 阅读 · 3 评论 -
系列学习 Gateway 之第 5 篇 —— 搭建高可用网关(完结)
本篇博客基于:https://blog.csdn.net/BiandanLoveyou/article/details/117376931业内通常使用多少个 9 来衡量网站的可用性。例如 QQ 的可用性是 4 个9,即 QQ 能保证一年里,服务在 99.99% 的时间是可用的。只有 0.01% 的时间不可用,大约是 53 分钟。对于大多数网站,2个9是基本可用,3个9是高可用,4个9是拥有自然恢复能力的高可用。实现高可用的主要手段是【数据冗余备份】和【服务失效转移】,两种手段具体怎么做呢?在网..原创 2021-05-29 23:41:19 · 1886 阅读 · 0 评论 -
系列学习 Gateway 之第 4 篇 —— 网关限流
限流就是限制流量,通过限流,可以很好的控制系统的 QPS(Query Per Second每秒查询率),从而达到保护系统的目的。常见的限流算法:1、计数器算法2、漏桶算法(Leaky Bucket)3、令牌桶算法(Token Bucket)1、计数器算法计数器算法采用计数器实现限流有点简单粗暴,一般我们会限制一秒钟的能够通过的请求数,比如限流 QPS 为100,算法的实现思路就是从第一个请求进来开始计时,在接下去的1s内,每来一个请求,就把计数加1,如果累加的数字达到了100,...原创 2021-05-29 23:41:11 · 1122 阅读 · 1 评论 -
系列学习 Gateway 之第 3 篇 —— 过滤器 Filter,自定义全局过滤器
本篇博客基于:https://blog.csdn.net/BiandanLoveyou/article/details/117323743过滤器的作用当我们有很多个服务时,比如会员服务、订单服务、商品服务等服务,客户端请求各个服务的 Api 时,每个服务都需要做相同的事情,比如鉴权、限流、日志输出等。对于这样重复的工作,我们就在微服务的上一层加一个全局的权限控制、限流、日志输出的 Api Gatewat 服务,然后再将请求转发到具体的业务服务层。这个Api Gateway服务就是起到一个服...原创 2021-05-29 23:40:51 · 2749 阅读 · 1 评论 -
系列学习 Gateway 之第 2 篇 —— 路由规则 predicate,动态路由配置
本篇博客基于:https://blog.csdn.net/BiandanLoveyou/article/details/117323743路由规则 predicate 也叫谓词,这些Predict的源码在org.springframework.cloud.gateway.handler.predicate 包中,列举各种 predicate :在上图中,有很多类型的 predicate。比如说时间类型的 Predicated(AfterRoutePredicateFactory Before..原创 2021-05-29 23:40:45 · 1832 阅读 · 1 评论 -
系列学习 Gateway 之第 1 篇 —— SpringCloud Gateway 简介,Gateway 入门实例
SpringCloud Gateway 官网地址:https://spring.io/projects/spring-cloud-gatewayOK,这一期课程我们来学习 SpringCloud 的另外一个组件:Gateway。之前我们学习网关服务,主要是 Zuul。Gateway 比 Zuul 的功能更强大,Zuul 2.0 从2019年5月份才推出,目前基本被Gateway 替代了。想了解 Zuul 可以查看博客:https://blog.csdn.net/BiandanLoveyou...原创 2021-05-29 23:40:32 · 759 阅读 · 1 评论 -
《自学SpringCloud微服务架构》之第 12 篇 ——分布式服务跟踪:SpringCloud Sleuth
问:为什么要使用 SpringCloud Sleuth ?答:随着业务的发展,系统规模越来越大,各个微服务之间的调用关系也越来越复杂,在复杂的微服务架构中,几乎每一个客户端请求都会形成一条复杂的分布式服务调用链路,有些调用可能出现延迟或者错误导致调用失败。因此,通过实现对请求调用的跟踪可以帮助我们快速发现错误根源,以及监控分析每条请求链路上的性能瓶颈问题等。OK,我们改造一下之前做的模...原创 2019-11-02 19:21:35 · 243 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 11 篇 —— 消息总线:SpringCloud Bus
问:什么是消息总线?答:在微服务架构中,通常使用轻量级的消息代理来构建一个公用的消息主题,以便让系统中所有的微服务实例连接上来,该主题中产生的消息会被所有实例监听和消费,称之为消息总线。我们经常用到消息代理的场景:1、将消息路由到一个或者多个目的地2、将消息转化成其它的表现方式3、将消息聚集、分解,并将结果发送到目的地,然后重新组合响应返回给消息用户。4、响应事件...原创 2019-11-02 14:24:25 · 375 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 10 篇 —— API 网关服务 SpringCloud Zuul
问:为什么需要API 网关服务 SpringCloud Zuul?答:根据我们之前所学的知识,实现某个系统的功能是完全没问题的。但随着业务不断增加,随之而来以下两个问题。1、运维人员。从运维角度来看,他们一般是要手工维护 F5 或者 Nginx 这样的设施里的路由规则和服务列表,当有实例增加或者减少或者IP地址变动的情况发生时,他们还需要手工地去同步修改这些信息,以保持实例信息与我们...原创 2019-10-27 23:16:54 · 330 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 9 篇 —— 声明式服务调用:Feign(需掌握)
通过前面的学习,我们基本掌握了微服务架构中如何使用 SpringCloud Ribbon 和 SpringCloud Hystrix 来实现客户端负载均衡的服务调用、通过断路器来保护我们的微服务应用。接下来,介绍一款重磅武器 SpringCloud Feign,它是更高层次的封装并简化了以上两个基本工具。它不仅整合了 SpringCloud Ribbon 和 SpringCloud H...原创 2019-10-26 23:49:13 · 304 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 8 篇 —— 服务容错保护:Hystrix
问:为什么需要服务容错保护?答:在微服务架构中,系统往往被拆分成很多个服务单元,每个服务单元之间通过服务注册与订阅的方式相互依赖。而每个服务单元部署在不同的机器或者不同的进程中,依赖一般通过远程调用的方式进行。这样一来,就有可能因为网络故障等原因导致服务调用异常或延迟。如果此时调用方的请求不断增加(如网购的秒杀、抢票等场景),最后因为服务的请求形成积压、阻塞,结果导致服务瘫痪,宕机,俗称“...原创 2019-10-25 10:06:07 · 301 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 7 篇 —— 客户端负载均衡 Ribbon (需了解)
问:什么是 Ribbon?答:Ribbon 是一个基于 HTTP 和 TCP 的客户端负载均衡工具,它基于 Netflix Ribbon 实现。SpringCloud Ribbon 只是一个工具类框架,不需要独立部署,但它几乎存在于每一个 SpringCloud 构建的微服务和基础设施中。微服务之间的调动、API 网关的请求转发等内容,实际上是通过 Ribbon 来实现的。问:什么是负...原创 2019-10-25 10:05:35 · 304 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 6 篇 —— 注册服务提供者、搭建高可用注册中心、Eureka自我保护机制
上一篇博客完成注册中心的搭建,接下来搭建一下服务提供者。注册服务提供者1、对着 MyProject 鼠标右键,New 一个 Module 模块。服务提供者的名字:eureka-clientOK。我们修改eureka-client 模块的 pom.xml 配置文件。需要增加<dependencies> 和<build> 节点的...原创 2019-10-25 10:05:08 · 312 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 1 篇 —— 微服务的自我修养
序言: 我们先看看2019年中国首富排行榜。嗯,99%的财富掌握在1%的人手里。没错的,这个时代,是富豪们玩转手里的棋子的时代,而我们都是看客。本人已毕业四年,却还是一如既往的做着毕业生都能做的敲代码工作!当初选择了程序员这条路,不求大富大贵,只求三餐温饱。渐渐的,发现不是路子 —— 个税居然不过千!趁着微服务架构这股火苗刚刚蔓延,很多公司开始慢慢使用新架构,赶紧上车,没有时间解释了!不会...原创 2019-10-25 09:59:15 · 461 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 2 篇 —— 学会用工具:IntelliJ IDEA 2018.2.8 能用80年
人和动物最大的区别在于:人会使用工具。工具善其事,必先利其器。磨刀不误砍柴工。要学会使用自己手头的工具和资源,古今成大事者,都基本是善于使用身边的工具、人才的。列个工具清单(针对条件有限的学习者):1、操作系统:当然是 windows 啦,有些大厂要求在Linux下做开发,本人还没试过。。。2、JDK1.8+3、开发工具选 :IntelliJ IDEA,顺便附上下载地址(可下载...原创 2019-10-25 10:00:20 · 329 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 3 篇 —— IDEA 工具配置SDK、Maven
在没有认识 Maven 之前,手动贴 jar 包,add build path 的情景,还记得吗?还是你没经历过那个年代?IDEA关联SDK1、打开 IDEA 工具,找到菜单栏下的 File ——》Other Settings ——》Structures for New Projects一般来说,让 IDEA 的设置对整个工具都有效,就是 Other Settings。而 S...原创 2019-10-25 10:01:40 · 599 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 5 篇 —— 了解服务治理,服务的注册中心:Spring Cloud Eureka
什么是“服务治理”? 服务治理是微服务架构中最为核心和基础的模块,它主要用来实现各个微服务实例的自动化注册与发现。问:为什么在微服务架构中需要服务治理模块?答:随着业务的发展,系统功能越来越复杂,相对应的微服务应用也不断增加,一些静态配置也会变得越来越难维护。服务治理就是为了解决微服务架构中的服务实例管理问题而产生的。问:能否通俗易懂点?答:服务治理 = 外卖平台。微...原创 2019-10-25 10:04:23 · 464 阅读 · 0 评论 -
《自学SpringCloud微服务架构》之第 4 篇 —— IDEA 常用快捷键、个性化设置
有些同学用惯 Eclipse 之后,习惯了 Eclipse 的快捷键,重新使用 IDEA 反而觉得不习惯。1、IDEA 设置Eclipse 快捷键(不推荐,快忘记 Eclipse 吧,你值得拥有更好的)。File ——》Settings——》Keymap——》选择 Eclipse。如下图。这样一来,快捷键就像 Eclipse 里面的一样了,平滑过渡。但是有个问题,如果别人使用自己...原创 2019-10-25 10:02:39 · 330 阅读 · 0 评论