![](https://img-blog.csdnimg.cn/64afe496f2f14c0bab0f3feb42137f4d.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Spring 微服务实践学习笔记
文章平均质量分 95
以总结、记录微服务学习过程为主,如果有知识点总结错误,欢迎指出并同我交流,感激不尽!
多氯环己烷
欢迎来到我的博客,在这里会总结分享一些个人学习笔记与经验,希望能帮助到你。如果文章有知识点总结错误,欢迎告知我,并与我交流,我将感激不尽!
展开
-
微服务架构 | 0. 微服务架构学习笔记目录【施工中】
市面上的主流 Java 语言微服务架构主要以 Spring Cloud 为主,其中大致分为两派:Netflix 和 Alibaba;本系列笔记将基于这两种方案,重点放在各种微服务组件的学习,以实践为主;原创 2022-01-10 20:00:00 · 479 阅读 · 0 评论 -
微服务架构 | 12.1 使用 Apache Dubbo 实现远程通信
Apache Dubbo 是一个分布式服务框架,主要实现多个系统之间的高性能、透明化调用;原创 2022-01-20 08:00:00 · 521 阅读 · 0 评论 -
微服务架构 | 11.1 整合 Seata AT 模式实现分布式事务
Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务;它提供了 AT、TCC、Saga 和 XA 事务模式,为开发者提供了一站式的分布式事务解决方案;原创 2022-02-09 08:00:00 · 454 阅读 · 0 评论 -
微服务架构 | 11. 分布式事务
分布式事务是指事务的参与者、支持事务的服务器、资源服务器及事务管理器分别位于分布式系统的不同节点上;原创 2022-02-08 08:00:00 · 437 阅读 · 0 评论 -
微服务架构 | 10.3 使用 Zipkin 可视化日志追踪
Zipkin 允许开发人员以图形方式查看事务占用的时间量,并分解在调用中涉及的每个微服务所用的时间。在微服务架构中,Zipkin 是识别性能问题的宝贵工具;原创 2022-02-07 08:00:00 · 684 阅读 · 0 评论 -
微服务架构 | 10.2 使用 Papertrail 实现日志聚合
Papertrail 是一种基于云的服务(基于免费增值),允许开发人员将来自多个源的日志数据聚合到单个可搜索的数据库中。开发人员可以为日志聚合选择的解决方案包括内部部署解决方案、基于云解决方案、开源解决方案和商业解决方案;原创 2022-02-06 08:00:00 · 2400 阅读 · 0 评论 -
微服务架构 | 10.1 使用 Sleuth 追踪服务调用链
Spring Cloud Sleuth 是一个 Spring Cloud 项目,它将关联 ID 装备到 HTTP 调用上,并将生成的跟踪数据提供给 OpenZipkin 的钩子。Spring Cloud Sleuth 通过添加过滤器并与其他 Spring 组件进行交互,将生成的关联 ID 传递到所有系统调用;原创 2022-02-05 08:00:00 · 448 阅读 · 0 评论 -
微服务架构 | 10. 分布式追踪
微服务的调试问题会比较复杂,可以使用分布式追踪解决;原创 2022-02-04 08:00:00 · 1495 阅读 · 0 评论 -
微服务架构 | 7.2 构建使用 JWT 令牌存储的 OAuth2 安全认证
JWT 为 OAuth2 令牌提供规范标准,并且可以自定义 JWT 令牌;原创 2022-02-03 08:00:00 · 514 阅读 · 0 评论 -
微服务架构 | 7.1 基于 OAuth2 的安全认证
OAuth2 是一个基于令牌的安全验证和授权框架。他允许用户使用第三方验证服务进行验证。 如果用户成功进行了验证, 则会出示一个令牌,该令牌必须与每个请求一起发送。然后,验证服务可以对令牌进行确认;原创 2022-02-02 08:00:00 · 3224 阅读 · 0 评论 -
微服务架构 | 7. 安全保护
安全性是暴露由许多微服务组成的公共访问API时要考虑的最重要的一个方面。Spring有一些有趣的功能和框架,使我们的微服务安全配置更容易;原创 2022-02-01 08:00:00 · 2739 阅读 · 0 评论 -
微服务架构 | 5.4 Sentinel 流控、统计和熔断的源码分析
调用链路是 Sentinel 的工作主流程,由各个 Slot 槽组成,将不同的 Slot 槽按照顺序串在一起,从而将不同的功能(限流、降级、系统保护)组合在一起;本篇《2. 获取 ProcessorSlot 链》将从源码级讲解如何获取调用链路,接着会以遍历链表的方式处理每一个 Slot 槽,其中就有:FlowSlot、StatisticSlot、DegradeSlot 等。分别对应本篇《3. 流控槽实施流控逻辑》、《4. 统计槽实施指标数据统计》和《5. 熔断槽实施服务熔断》;原创 2022-01-31 13:00:32 · 714 阅读 · 0 评论 -
微服务架构 | 5.2 基于 Sentinel 的服务限流及熔断
Sentinel 是面向分布式服务架构的轻量级流量控制组件,主要以流量为切入点,从限流、流量整形、服务降级、系统负载保护等多个维度来帮助我们保障微服务的稳定性;原创 2022-01-30 08:00:00 · 2155 阅读 · 2 评论 -
微服务架构 | 5.1 使用 Netflix Hystrix 断路器
Hystrix 是一个延迟和容灾库,旨在隔离远程系统、服务和第三方库的访问点,停止级联故障,并在故障不可避免的复杂分布式系统中实现弹性;原创 2022-01-29 08:00:00 · 258 阅读 · 0 评论 -
微服务架构 | 5. 服务容灾
当服务器压力剧增的情况下,根据实际业务情况及流量,对一些服务和页面有策略的不处理或换种简单的方式处理,从而释放服务器资源以保证核心交易正常运作或高效运作;原创 2022-01-28 08:00:00 · 1708 阅读 · 0 评论 -
微服务架构 | 4.2 基于 Feign 与 OpenFeign 的服务接口调用
Feign 是一个声明式的Web服务客户端,让编写 Web 服务客户端变得非常容易,只需创建一个接口并在接口上添加注解即可原创 2022-01-27 08:00:00 · 742 阅读 · 0 评论 -
微服务架构 | 4.1 基于 Ribbon 的负载均衡详解
Spring Cloud Ribbon 是基于 Netflix Ribbon 实现的一套客户端负载均衡的工具;提供客户端的软件负载均衡算法和服务调用;原创 2022-01-26 08:00:00 · 885 阅读 · 0 评论 -
微服务架构 | 4. 服务调用
服务调用是在注册中心的基础之上,解决应该调用哪个服务实例的问题;原创 2022-01-25 08:00:00 · 308 阅读 · 0 评论 -
微服务架构 | *3.5 Nacos 服务注册与发现的源码分析
为方便理解与表达,这里把 Nacos 控制台和 Nacos 注册中心称为 Nacos 服务器(就是 web 界面那个),我们编写的业务服务称为 Nacso 客户端;原创 2022-01-19 08:00:00 · 2431 阅读 · 0 评论 -
微服务架构 | 3.4 HashiCorp Consul 注册中心
Consul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用 Go 语言开发。它提供了微服务系统中的服务治理、配置中心、控制总线等功能。这些功能中的每一个都可以根据需要单独使用,也可以一起使用以构建全方位的服务网格,总之 Consul 提供了一种完整的服务网格解决方案;原创 2022-01-18 08:00:00 · 2897 阅读 · 0 评论 -
微服务架构 | 3.3 Apache Zookeeper 注册中心
ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的 Chubby 一个开源的实现,是 Hadoop 和 Hbase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等;原创 2022-01-17 08:00:00 · 1292 阅读 · 0 评论 -
微服务架构 | 3.2 Alibaba Nacos 注册中心
Nacos 致力于解决微服务中的统一配置、服务注册与发现等问题。它提供了一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管理;原创 2022-01-16 08:00:00 · 777 阅读 · 2 评论 -
微服务架构 | 3.1 Netflix Eureka 注册中心
Eureka 是 Netflix 开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在 AWS 域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的;Spring Cloud 将它集成在其子项目 spring-cloud-netflix 中,以实现 Spring Cloud 的服务发现功能;原创 2022-01-15 08:00:00 · 378 阅读 · 0 评论 -
微服务架构 | 3. 注册中心与服务发现
注册中心用来集中管理微服务,实现服务的注册,发现,检查等功能;原创 2022-01-14 08:00:00 · 786 阅读 · 0 评论 -
微服务架构 | *2.5 Nacos 长轮询定时机制的源码分析
为方便理解与表达,这里把 Nacos 控制台和 Nacos 注册中心称为 Nacos 服务器(就是 web 界面那个),我们编写的业务服务称为 Nacso 客户端;由于篇幅有限,这里将源码分析分为上下两篇,其中上篇讲获取配置与事件订阅机制,下篇讲长轮询定时机制;在《微服务架构 | 2.2 Alibaba Nacos 的统一配置管理》中提到一张 Nacos 动态监听的长轮询机制原理图,本篇将围绕这张图剖析长轮询定时机制的原理;原创 2022-01-24 08:00:00 · 473 阅读 · 1 评论 -
微服务架构 | *2.4 Nacos 获取配置与事件订阅机制的源码分析
为方便理解与表达,这里把 Nacos 控制台和 Nacos 注册中心称为 Nacos 服务器(就是 web 界面那个),我们编写的业务服务称为 Nacso 客户端;由于篇幅有限,这里将源码分析分为上下两篇,其中上篇讲获取配置与事件订阅机制,下篇讲长轮询定时机制;原创 2022-01-23 08:00:00 · 563 阅读 · 0 评论 -
微服务架构 | *2.3 Spring Cloud 启动及加载配置文件源码分析(以 Nacos 为例)
Spring Cloud 要实现统一配置管理,需要解决两个问题:如何获取远程服务器配置和如何动态更新配置;在这之前,我们先要知道 Spring Cloud 什么时候给我们加载配置文件;原创 2022-01-22 08:00:00 · 970 阅读 · 0 评论 -
微服务架构 | 2.2 Alibaba Nacos 的统一配置管理
Nacos 致力于解决微服务中的统一配置、服务注册与发现等问题。它提供了一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管理;原创 2022-01-21 08:00:00 · 776 阅读 · 0 评论 -
微服务架构 | 2.1 使用 Spring Cloud Config 管理服务配置项
SpringCloud Config 为微服务架构中的微服务提供集中化的外部配置支持,配置服务器为各个不同微服务应用的所有环境提供了一个中心化的外部配置;原创 2022-01-13 08:00:00 · 321 阅读 · 1 评论 -
微服务架构 | 2. 服务配置管理
将配置写入一个 config 常量类往往会有些问题,每次对配置进行更改时,应用程序都必须重新编译和重新部署;在少量的应用程序中可以将配置写在低层级的属性文件,如:YAML、JSON 或 XML;其中包含数据库和中间件连接信息,以及驱动应用程序行为的相关元数据;但是在处理可能包含数百个微服务的基于云的应用程序,其中每个微服务可能会运行多个服务实例时,需要对配置进行集中管理;原创 2022-01-12 08:00:00 · 829 阅读 · 0 评论 -
微服务架构 | 1. 微服务相关基础知识
本篇主要介绍一些通用概念概述、组件对比与系列笔记的目录结构说明原创 2022-01-11 08:00:00 · 579 阅读 · 0 评论