# springcloud_learning **Repository Path**: raychen11/springcloud_learning ## Basic Information - **Project Name**: springcloud_learning - **Description**: Spring Cloud Netfix学习过程 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-01 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 1.为什么需要微服务? 传统开发模式下,绝大部分的Web应用都是采用单体架构的风格来进行构建的,这意味着Web应用时作为单个可部署的软件制品进行交付的,所有的接口、业务逻辑、持久层都被打包在一个Web应用中,并且部署在一台服务器上,这种开发模式会带来诸多不便,多团队协同开发的成本极高。 2.微服务的优点? ·各个服务的开发、测试、部署都互相独立,比如用户服务就可以拆分作为一个单独的服务,而它的开发也不用依赖于其他服务,如果用户量很大,我们可以很容易的对其进行负载。 ·当一个新需求出现时,特别是一个庞大的项目系统中,你得去考虑各方的问题,兼容性、影响度等等,而使用微服务则可以直接跳过这些费时又烧脑的环节。 ·使用微服务将项目进行拆分之后,各服务之间就消除了诸多限制,只需要保证对外提供的接口正常可用,至于使用什么语言、什么框架通通不用关心。 3.SpringCloud组件 服务治理 Eureka 服务通信 Ribbon 服务通信 Feign 服务网关 Zuul 服务容错 Hystrix 服务配置 Config 服务监控 Actuator 服务跟踪 Zipkin 服务治理的核心有三部分组成:服务提供者、服务消费者、注册中心。 在分布式系统架构中,每个微服务在启动时,将自己的信息存储在注册中心,这叫做服务注册。 服务消费者从注册中心获取服务提供者的网络信息,通过该信息调用服务,叫做服务发现。