首页 > 编程知识 正文

SaaS运营架构,java spring框架

时间:2023-05-03 12:22:30 阅读:132559 作者:4372

牛旦教育IT教室2019-04-02 07:12:00

Spring Cloud的整体核心架构只有一个,在Rest服务,也就是Spring Cloud的配置过程中,所有的配置处理都是围绕Rest完成的,在这个Rest处理中,一定要有服务提供者(Provider )、

SpringCloud基础架构

既然Spring Cloud的核心是Rest风格的结构,那么为了更好地利用Rest等微服务,还需要考虑以下问题。

1、所有微服务的地址一定会非常多,为了统一管理这些地址信息,也应该准备分散的注册中心,及时告诉用户哪些服务不可用,该注册中心支持HA机制

微服务结构图

2、对于整个的WEB端的构架(实现spring boot )可以方便地编写WEB程序,然后利用Nginx或Apache实现负载均衡处理,(如果你的WEB端出现负载均衡)

多业务端-负载平衡

如果客户端使用Rest架构进行调用,则往往需要调用地址。 即使当前使用Eureka作为注册中心,也需要明确的呼叫地址。 但是,如果所有操作都以调用地址方式处理,则程序开发人员最方便的工具是接口,因此他们希望能够以接口方式调用所有Rest服务的内容,并提供了Feign技术

费因

3、在进行整体微体系结构设计时,相关问题还是RPC,必须考虑熔断处理机制。 事实上,所有的熔断就像在生活中使用保险丝一样。 有了保险丝,一些设备发生故障后也能保护家庭的电器可以正常使用。 如果现在有几个微服务并且可以在它们之间相互调用,例如a微服务调用b微服务,b微服务调用c微服务。

在实际项目设计过程中,如果不处理好熔断机制,就会出现雪崩效应,因此为了防止出现这种问题,SpringCloud配备了Hystrix熔断处理机制,即使出现某些微服务问题也可以正常使用

Hystrix熔断处理

4、微服务接入时,另一个非常可怕。

zul代理的工作原理

业务端使用户只需知道指定路由的路径即可访问指定微服务的信息,从而更好地挖掘java中“key=value”的设计思想,实现所有微服务的信息

5、在SpringBoot学习的时候,强调了一个问题。 SpringBoot强调的是“零配置”概念,本质上不需要配置文件。 但是,实际上这一点并没有完全实现。 因为在整个实际中,仍然提供了application.yml部署文件。 例如,微服务,现在突然您的主机进行机房更改,所有服务的IP地址都可能发生变化。 这对于程序的维护非常不方便。 为了解决这些问题,可以在设计Spring Cloud时使用此组件直接基于GIT或SVN管理配置式。

Spring Cloud配置

在整体设计中,Spring Cloud更好地实现了RPC的体系结构设计,而且使用Rest作为通信的基础,这是他的成功之处。 由于大量使用了netflix公司的产品技术,这些技术也有可靠的保证。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。