初识微服务

项目架构发展

单体架构

项目中有且只有一个模块可以运行和部署。

特点

部署成本低

耦合度高(维护困难、升级困难)

分布式系统架构

将项目拆分成多个可以单独运行和部署的模块。

单独运行和部署的模块(微)服务

特点

耦合度低。方便扩展,职责单一,隔离性强。

缺点

按照什么原则拆分。

怎么进行远程调用。

地址如何管理。

如何修改配置。

服务很多,前端需要知道每个服务的地址。

微服务架构

就是分布式系统架构

要求

单一职责,自治,隔离性强

微服务技术对比

dubbo

远程调用

注册中心

spring cloud

是微服务架构的一站式解决方案,集成了各种优秀微服务功能组件

远程调用

  1. OpenFeign
  2. Dubbo

注册中心

  1. eureka
  2. nacos
  3. consul

网关

  1. springcloudgateway
  2. zuul

配置中心

  1. spring cloud config
  2. nacos

链路监控

  1. zipkin
  2. sleuth

流控降级保护

  1. hystix
  2. sentinel

Spring Cloud介绍

netflix

alibaba

2套父工程

spring cloud

spring cloud aliaba

服务拆分和远程调用(掌握)

创建微服务架构项目

2个服务构成
            订单服务
                订单数据库
            用户服务
                用户数据库

远程调用

本质:在java代码中向另外一个服务的接口的发送http请求,获取响应结果。

使用流程

1.将RestTemplate交由spring管理

RestTemplate在消费服务的代码里写入

    @Bean
    public RestTemplate restTemplate() {
        return new RestTemplate();
    }

2.并注入RestTemplate容器对象
   

3.调用restTemplate对象的getForObject(url,提供服务的实体User.class)

服务提供者:一次业务中,被其它微服务调用的服务。(提供接口给其它微服务)

服务消费者:一次业务中,调用其它微服务的服务。(调用其它微服务提供的接口)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值