前言
基于 Spring Cloud 的微服务设计和开发,已经越来越多地得到了更多企业的推广和应用,而 Spring Cloud 社区也在不断的迅速发展壮大之中,近几年时间,Spring Cloud 的版本也经历了快速的迭代和更新。
本篇小编将带你们以最新的 Spring Cloud 发行版 Greenwich.SR1,带领大家体验如何使用 Spring Cloud 从微服务的设计、开发到部署、发布的全过程,在这一过程中,您将可以学到,怎么快速构建一个 Spring Cloud 项目工程,怎么使用最新版本的 Spring Boot 开发框架开发微服务应用,以及如何使用 Consul 进行微服务治理,并以此构建一个高性能的分布式环境,同时体会如何使用 Docker 进行微服务发布。
一、微服务结构概述
微服务架构是当前软件开发领域的技术热点。它在各种博客、社交媒体和会议演讲上的出镜率非常之高,笔者相信大家也都听说过微服务这个名词。然而微服务似乎又是非常虚幻的——我们找不到微服务的完整定义,以至于很多人认为是在炒作概念。
那么什么是微服务呢?它解决了哪些问题?它又具有哪些特点?诸多问题,本章都将为你―一解答。同时,微服务理论性的内容,互联网上已有很多,本书不会过多提及。笔者会尽量把篇幅花在微服务的具体实战内容上。
•1.单体应用架构存在的问题
•2.如何解决单体应用架构存在的问题
•3.什么是微服务
•4.微服架构的优点与挑战
•5.微服设计原则
•6.如果实现微服务架构
二、微服务开发框架-Spring cloud
•1.spring cloud 简介
尽管Spring Cloud带有“Cloud”的字样。但它并不是云计算解决方案,而是在SpringBoot 基础上构建的,用于快速构建分布式系统的通用模式的工具集。
•2.spring cloud特点
1.约定优于配置。
2.适用于各种环境。开发、部署在 PC Server或各种云环境(例如阿里云、AWS 等)均可。
3.隐藏了组件的复杂性,并提供声明式、无xml的配置方式。。开箱即用,快速启动。
4.轻量级的组件。Spring Cloud整合的组件大多比较轻量。例如 Eureka、Zuul,等等,都是各自领域轻量级的实现。
5.组件丰富,功能齐全。Spring Cloud为微服务架构提供了非常完整的支持。例如,配置管理、服务发现、断路器、微服务网关等。
6.选型中立、丰富。例如,Spring Cloud支持使用Eureka、Z