# springcloud-bucket **Repository Path**: lonlone/springcloud-bucket ## Basic Information - **Project Name**: springcloud-bucket - **Description**: springcloud全家桶 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2020-03-18 - **Last Updated**: 2022-02-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # springcloud-bucket #### 介绍 springcloud全家桶 构建分布式系统不应该是复杂的,SpringCloud对常见的分布式系统模式提供了简单易用的编程模型,帮助开发者构建弹性、可靠、协调的应用程序。 SpringCloud是在SpringBoot的基础上构建的,使开发者可以轻松入门并快速提高工作效率。 SpringCloud为开发人员提供了快速构建分布式系统架构的工具,例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁定,领导选举,分布式会话,集群状态等。 #### 软件架构 软件架构说明 ![整体架构](https://images.gitee.com/uploads/images/2020/0320/190904_67e9b15e_1000481.png "屏幕截图.png") SpringCloud的版本关系 SpringCloud是一个由许多子项目组成的综合项目,各子项目有不同的发布节奏。 为了管理SpringCloud与各子项目的版本依赖关系,发布了一个清单,其中包括了某个SpringCloud版本对应的子项目版本。 为了避免SpringCloud版本号与子项目版本号混淆,SpringCloud版本采用了名称而非版本号的命名,这些版本的名字采用了伦敦地铁站的名字,根据字母表的顺序来对应版本时间顺序,例如Angel是第一个版本, Brixton是第二个版本。 当SpringCloud的发布内容积累到临界点或者一个重大BUG被解决后,会发布一个"service releases"版本,简称SRX版本,比如Greenwich.SR2就是SpringCloud发布的Greenwich版本的第2个SRX版本。 SpringCloud子项目简介 Spring Cloud Config 集中配置管理工具,分布式系统中统一的外部配置管理,默认使用Git来存储配置,可以支持客户端配置的刷新及加密、解密操作。 Spring Cloud Netflix Netflix OSS 开源组件集成,包括Eureka、Hystrix、Ribbon、Feign、Zuul等核心组件。 Eureka:服务治理组件,包括服务端的注册中心和客户端的服务发现机制; Ribbon:负载均衡的服务调用组件,具有多种负载均衡调用策略; Hystrix:服务容错组件,实现了断路器模式,为依赖服务的出错和延迟提供了容错能力; Feign:基于Ribbon和Hystrix的声明式服务调用组件; Zuul:API网关组件,对请求提供路由及过滤功能。 Spring Cloud Bus 用于传播集群状态变化的消息总线,使用轻量级消息代理链接分布式系统中的节点,可以用来动态刷新集群中的服务配置。 Spring Cloud Consul 基于Hashicorp Consul的服务治理组件。 Spring Cloud Security 安全工具包,对Zuul代理中的负载均衡OAuth2客户端及登录认证进行支持。 Spring Cloud Sleuth SpringCloud应用程序的分布式请求链路跟踪,支持使用Zipkin、HTrace和基于日志(例如ELK)的跟踪。 Spring Cloud Stream 轻量级事件驱动微服务框架,可以使用简单的声明式模型来发送及接收消息,主要实现为Apache Kafka及RabbitMQ。 Spring Cloud Task 用于快速构建短暂、有限数据处理任务的微服务框架,用于向应用中添加功能性和非功能性的特性。 Spring Cloud Zookeeper 基于Apache Zookeeper的服务治理组件。 Spring Cloud Gateway API网关组件,对请求提供路由及过滤功能。 Spring Cloud OpenFeign 基于Ribbon和Hystrix的声明式服务调用组件,可以动态创建基于Spring MVC注解的接口实现用于服务调用,在SpringCloud 2.0中已经取代Feign成为了一等公民。 #### 安装教程 1. mvn clean 2. mvn package #### 使用说明 1. 可以将根目录下的模块根据注册中心和服务依次添加 2. xxxx 3. xxxx #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 参考链接 [macrozheng.github.io](https://macrozheng.github.io/mall-learning) 使用说明文档 1. nacos 1.1 安装. 下载nacos windows版本或者类unix版本,启动server. 1.2 使用配置中心![输入图片说明](https://images.gitee.com/uploads/images/2020/0613/190338_9886141c_1000481.png "nacos-config-index.PNG") 1.3 使用配置文件 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0613/190450_69e4ef5e_1000481.png "nacos-use.PNG") 1.4 接口调用结果 ![输入图片说明](https://images.gitee.com/uploads/images/2020/0613/190513_ecc3857e_1000481.png "nacos-config.PNG") #### 码云特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目 5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)