PCF 从构建到连接( 二 )


另一个是断路器,其实叫保险丝,跟我们生活中保险丝的断开很像。它解决的问题是什么?实际上,我们刚刚提到了我们传统的Spring MVC或web Container,它实际上是通过线程池访问的。比如AB的两个服务都访问C,那么如果C有一些异常,它崩溃了,那么如果A和B对A和B有不断的请求,他们说我会通过A访问A、C,通过B访问C,那么A和B的线程池就会不断堆积。堆积后会引起雪崩反应。因为在微服务环境中,调用面会非常复杂,会导致所有相关服务的雪崩和崩溃。它在A端和B端提供断路器,但实际上断路器不在C端。A和B提供断路器后,他们告诉所有访问A和B的人,访问这里的底层服务有问题。我会给你一个错误。不要再访问我的界面。这个界面是错误的。
但是它和我们普通的保险丝有一个很大的区别,就是它有断路后自愈的能力,后面会有心跳,会检查服务C是否已经恢复。如果一旦恢复,它还可以将新的请求导向c。这是断路器的一个基本原理。
事实上,SpringCloud对我们来说非常简单。它实际上在Spring中集成了这三个组件。可以通过自动配置在Spring Boot应用中使用。

PCF 从构建到连接


文章图片

这实际上是基于Spring Cloud和Spring Boot的最经典的架构,它实际上使用了我们刚刚谈到的三个组件。实际上有1到n个微服务,中间一个是微服务。访问时,它在前端放置一个API网关。我们通过Spring Cloud有一个类似Zuul的组件,Zuul通过路由将外部请求引导到微服务环境。微服务可以部署在容器中。
如果用一个比较新的技术,可以考虑Zuul可以用Spring Cloud Gateway来解决。Zuul1.0和春云网关有很大的区别。Zuul1.0实际上是基于路径的路由。Spring Cloud Gateway可以更丰富,可以基于参数、表头等不同方式,包括在Spring Cloud Gateway中控制fuse和配置fuse,不会影响你的业务代码。此外,您可以通过Spring Boot2.0替换1.0的组件
【PCF 从构建到连接】什么是PCF的春季云服务?
对于Spring云服务,Pivotal对开源做了很多增强,主要针对易用性、安全性和可靠性。

PCF 从构建到连接


文章图片

易用性。如果您已经构建了Spring Cloud开源组件,那么应该使用它的注释和参数配置,包括它有一个Server。然而,在PCF的PaaS平台上,我们希望所有这些事情都实现自动化。我只是简单的使用一个CF Service,也就是一个后端服务,通过这种方式直接创建一个Spring云服务的实例,可以应用到SpringBoot应用中。
保安。如果您确实是开源的,您可能会考虑使用其他安全身份验证机制来解决这个问题,并且在SpringCloudService中,它对开发人员是透明的。
可靠性。它可以通过PaaS平台解决,包括高可靠性、灵活性、容灾性、容错性等。,这些都可以通过PaaS平台的PCF来解决。
我想简单谈谈微服务设计的原则和方法。当我们拥有微服务时,往往要考虑它的设计方法,从原来的传统应用,如何迁移到新的平台,以及如何开发云原生微服务。在Pivotal,有一整套的微服务实践,在Pivotal有一个非常特殊的服务叫做Pivotal Labs,它会教我们的客户和用户使用Pivotal的产品以及实践中遇到的一些问题,通过Labs和我们的交付团队来帮助我们的客户。
将传统应用程序拆分为微服务的基本方法

PCF 从构建到连接


文章图片

将传统的巨石应用程序重建和拆分为微服务的基本方法

推荐阅读