0
点赞
收藏
分享

微信扫一扫

微服务学习

_鱼与渔_ 2022-01-20 阅读 61

1. 单体架构

->将业务的所有功能集中在一个项目中开发,打成一个包部署

优点: 架构简单,部署成本低

缺点: 耦合度高

2.分布式架构

->根据业务功能进行系统的拆分,每隔业务模块作为独立项目开发,成为一个服务

优点:降低服务耦合,有利于升级拓展

服务拆分注意事项

1.不同的微服务,不要重复开发相同业务

2.微服务数据独立,不要访问其他微服务的数据库(一个微服务对应一个数据库)

3.微服务可以将自己的业务暴露为接口,供其他微服务调用

微服务调用方式

1.基于RestTemplate发起的http请求实现远程调用

2.http请求做远程调用是与语言无关的调用,只要直到对方的ip/端口/接口路径/请求参数就行

提供者与消费者

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

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

思考

服务A调用服务B,服务B调用服务C,那么服务B是什么角色呢?
->如果是A调B这个业务,那么B就是提供者 B调用C,那么B就是消费者(一个业务既可以是提供者也可以是消费者,根据业务而定)

nacos注册中心

  1. 服务注册中心诞生背景? (服务多了,需要统一管理,例如所有公司需要在工商局进行备案)

  2. 服务注册中心的选型?(社区活跃度,稳定性,功能,性能,学习成本)

  3. Nacos下载,安装(解压),配置(application.properties),启动(startup.cmd),访问(http://ip:port/nacos)

  4. 基于Nacos实现服务的注册?(添加依赖,服务配置,启动服务并检查)

  5. 基于RestTemplate实现服务的简易调用?(服务消费方调用服务提供方)

  6. 常见问题
    如何理解服务注册中心?(存储服务信息的一个服务)
    服务注册中心诞生的背景? (服务多了,需要对服务进行更好管理)
    市场上常用的注册中心?(Zookeeper,Eureka,Nacos,Consul)
    如何对注册中心进行选型?(社区活跃度,稳定性,功能,性能,学习成本)
    Nacos 是什么?(是Alibaba公司基于SpringBoo技术实现的一个注册中心,本质上也是一个web服务)
    Nacos 的基本架构?(Client/Server架构)
    Nacos 主要提供了什么核心功能?(服务的注册,发现,配置)
    Nacos 服务启动需要什么前置条件?(配置JDK的JAVA_HOME目录,安装MySQL5.7以上版本,配置连接的数据库)
    Nacos 服务单机模式,window平台下启动时的指令是什么?(startup.cmd -m standalone)
    实现Nacos服务注册需要添加什么依赖?(两个:web,discovery)
    实现Nacos服务注册时,必须做哪些配置?(服务名,假如是本机服务注册可以省略服务地址)
    Nacos如何检查服务状态?(通过心跳包实现,服务启动时会定时向nacos发送心跳包-BeatInfo)
    服务之间进行服务调用时,使用了什么API?(RestTemplate,用此对象之前要先创建这个对象并交给spring管理)

  7. 使用LoadBalancerClient这个对象实现对远程服务进行负载均衡方式的获取
    在这里插入图片描述

举报

相关推荐

0 条评论