Spring-cloud微服务架构

2018-07-16  本文已影响0人  CherrySSS

最近了解了一下Spring-cloud微服务架构,主要是对《Spring+Cloud与Docker微服务架构实战》的keypoint进行记录,方便以后查看

  1. 服务提供者:服务的被调用方
  2. 服务消费者:服务的调用方
  3. Maven项目中pom.xml中:
    • 引入spring boot的依赖,引入spring cloud的依赖,添加spring-boot的maven插件
    • groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的;GroupID 是项目组织唯一的标识符,实际对应JAVA的包的结构,是main目录里java的目录结构;ArtifactID是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。
  4. 在类上使用@SpringBootApplication生命这是一个SpringBoot项目
  5. 传统Web开发中,常使用properties格式文件作为配置文件,Spring Boot及Spring Cloud支持使用properties/yml格式文件作为配置文件,yml(YAML:yet another markup language)和properties格式文件可互相转换,前者结构更清晰,可读性可维护性更强,但有严格的缩进
  6. 使用RestTemplate调用用户微服务中的RESTful API,IP和端口可以硬编码在代码中,也可以提取到配置文件中,存在的问题:
    • 适用场景有限:e.g.服务提供者IP和端口发生变化,需要修改服务消费者的配置并重新发布(不可取)
    • 无法动态伸缩:每个微服务一般会部署多个实例,实现容灾和负载均衡,系统需要具备自动伸缩能力,硬编码无法实现
上一篇 下一篇

猜你喜欢

热点阅读