# cloud-test **Repository Path**: quexinchen/cloud-test ## Basic Information - **Project Name**: cloud-test - **Description**: spring cloud test - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-05-09 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #spring-cloud test 微服务架构就是将一个完整的应用从数据存储开始垂直拆分成多个不同的服务, 每个服务都能独立部署、独立维护、独立扩展,服务与服务间通过诸如RESTFUL API的方式互相调用。 使用Spring Cloud Netflix中的Eureka实现服务注册中心和服务注册与发现,而服务之间通过Ribbon或者Feign 实现服务的消费以及负载均衡,通过Spring Cloud Config实现了应用多环境的外部化配置以及版本管理。为了使得 服务集群更为健壮,使用Hystrix的熔断机制来避免在微服务中个别服务出现异常时引起的故障蔓延。 ###eureka-server *服务注册中心 ###eureka-client *服务提供方 ###eureka-consumer *服务消费 ###eureka-consumer-ribbon *Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡的工具。 它是一个基于HTTP和TCP的客户端负载均衡器。它可以通过在客户端中配置 ribbonServerList来设置服务端列表去轮询访问以达到均衡负载的作用 *Ribbon与Eureka联合使用 ###eureka-consumer-feign *Spring Cloud Feign 通过注解的形式来配置完成对web服务接口的绑定 它不仅扩展对spring MVC 注解的支持,还整合了Ribbon和Eureka来提供负载均衡的HTTP客户端 ###config-server-git *实现了对服务端和客户端中环境变量和属性配置的抽象映射, 所以它除了适用于Spring构建的应用程序之外,也可以在任何其他语言运行的应用程序中使用. 默认采用的git来存储信息 ### config-client *客户端 *{spring.application.name}:对应配置文件规则中的{application}部分 *{spring.cloud.config.profile}:对应配置文件规则中的{profile}部分 *{spring.cloud.config.label}:对应配置文件规则中的{label}部分 *{spring.cloud.config.uri}:配置中心config-server的地址 ###api-gateway *通过服务网关统一向外系统提供REST API的过程中,除了具备服务路由、均衡负载功能之外, *它还具备了权限控制等功能。Spring Cloud Netflix中的Zuul就担任了这样的一个角色, *为微服务架构提供了前门保护的作用,同时将权限控制这些较重的非业务逻辑内容迁移到服务路由层面, *使得服务集群主体能够具备更高的可复用性和可测试性。