写点什么

覆盖全网的阿里微服务架构有多牛:K8S+ 实战 + 笔记 + 项目教程

用户头像
周老师
关注
发布于: 2021 年 05 月 20 日

前言

目前,平台化、智能化、泛在化和易用化正在成为新一轮信息技术发展及信息化应用的全球趋势。在这 趋势中,平台化尤其具有 础性及战略性意义,而以 Spring Cloud 技术为代表的微服务 是平台化的代表性技术。

为了更好地推广微服务相关技术的应用,今天小编分享的这份《SpringCloud 实战演练文档》。本书用简单明了的方式阐述了微服务开发的基础知识,详细介绍了 Spring Cloud 在项目开发各个阶段的操作方法与技巧。本书既能够帮助入门读者了解微服务,也能够帮助运维人员加深对微服务体系的理解,尤其能够为致力于互联网技术开发和 Java 开发的程序员带来卓有成效的实操性帮助。


本书是 Spring Cloud 的入门书。首先,简要概述了微服务并分析了当前互联网架构趋势。其次,系统地介绍了 Spring Boot 的相关知识,从基础用法到核心组件。再次,从具体的案例出发,依次讲解了 SpringCloud 最常用的组件,将理论与实践相结合,使读者在学习 Spring Cloud 的过程中还能了解一个产品从无到有的全过程。最后,结合目前最流行的容器技术,介绍了 Kubernetes 如何配合 Docker 进行系统的分布式部署。

本书适合具有一定 Java 基础和 Spring MVC 基础的人群以及希望往架构师方向发展的开发者阅读。

书籍教程结构

本书共分四部分,从基础到实战,讲解了基于 Spring Cloud 的常用组件。

第一部分(基础篇):第 1~4 章

第二部分(实战篇):第 5~10 章

第三部分(高级篇):第 11~13 章

第四部分(部署篇):第 14~15 章

第一部分(基础篇)


第 1 章微服务概述

我们要学习微服务架构,就要了解它,本章将带领大家初步了解微服务,为后面系统学习微服务架构奠定良好的基础。


第 2 章 Spring Boot 基础

本书以实战为导向,讲解了如何使用 Spring Cloud 开发微服务项目,而 Spring Cloud 基于 SpringBoot,所以本章先来初步了解如何使用 Spring Boot 搭建框架。


第 3 章 Spring Boot 核心原理

通过第 2 章的学习,读者应该对 Spring Boot 有了一个大致的认识,利用 Spring Boot 可以极大地简化应用程序的开发,这都归功于 Spring Boot 的四大核心原理:起步依赖、自动配置、Actuator 和 Spring Boot 命令行。本章中,我们将深入探讨 Spring Boot 的核心原理,以便读者能更好地学习和使用 Spring Boot。


第 4 章 Spring Cloud 概述

从本章开始,我们将正式踏上探索 Spring Cloud 秘密的旅程。学完本书后,读者将学会搭建一个完整的分布式架构,从而向架构师的目标靠近。


第二部分(实战篇)

SpringCloud 实战演练文档 K8S+实战+笔记+项目教程请见文末


第 5 章 项目准备阶段

本章中,我 将开始 个大型实战项目一一博客网站。通过“以战代练”的方式来学习如何构建 Spring loud 微服务架构,让读者走出理论的丛林,在实践中玩转微服务架构。


第 6 章 公共模块封装

从本章开始,我们将学习框架的搭建。由于代码量巨大,本书不可能全部贴出,所以只展示一些核心代码。全部源码可以从本书配套源码中查看。


第 7 章 注册中心: Spring Cloud Netflix Eureka

通过前面的学习,我们可以总结出来,注册中心是整套微服务架构的核心,即系统的心脏,它能够帮助我们管理所有的微服务,精确定位到具体的服务就是通过注册中心来实现的。构建注册中心的好处也是不言而喻的,通过注册中心,我们可以实现服务的负载均衡。配置的统-管理。服务间的通信等。目前。我们可以采用多种技术实现注册中心,如 Eureka. ZooKeeper. Consul 等,本书采用 SpringCloud 默认集成的 Eureka 框架来构建注册中心。


第 8 章 配置中心: Spring Cloud Config

我们知道,一个微服务系统可能由成千上万的服务组成,每个服务都会有自己的配置,不同服务之间的有些配置是相同的,比如数据库。如果对于每个服务,我们都复制相同的配置,一旦该配置发生了变化,那么每个服务都需要修改,代价可想而知。Spring Cloud 已经考虑到了这一点, 它为我们提供了一整套解决方案, 那就是强大的 Spring CloudConfig。


第 9 章 服务网关: Spring Cloud Gateway

本将介绍的微服务的又一大组件一一服务网关。我们需要服务网关,还有一些很重要的因素,比如服务网关会对接口进行统一拦截并做合法性校验,一个服务可以启动多个端口,利用服务网关进行负载均衡处理等。目前市面上有很多产品可以实现服务网关这一功能, 如 Nginx. Apache. Zuul 以及 Spring CloudGateway 等。Spring Cloud 集成了 Zuul 和 Gateway,我们可以很方便地实现服务网关这一功能。


第 10 章 功能开发

通过前几章的学习,我们已经搭建好了博客网站的基本框架。本章我们将正式开始网站的功能开发。


第三部分(高级篇)

SpringCloud 实战演练文档 K8S+实战+笔记+项目教程请见文末


第 11 章 服务间通信: Spring Cloud Netflix Ribbon 和 Spring Cloud OpenFeign

一个大型的 系统由多个微服务模块组成,我们一-般 可以通过内部接口调用的形式(服务 A 提供一个接口,服务 B 通过 HTTP 请求调用服务 A 的接口)实现各模块之间的通信。为了简化开发,SpringCloud 集成了 Spring Cloud Netlix Ribbon 和 Spring Cloud OpenFeign,两个组件都支持通过 HTTP 请求不同的服务。本书将简要介绍 Spring Cloud Netflix Ribbon,借此引出 Sping Cloud OpenFeign,并详细介绍其用法。


第 12 章 服务链路追踪: Spring Cloud Sleuth

我们知道,微服务之间通过网络进行通信,但在我们提供服务的同时,不能保证网络一定是畅通的。相反地,网络是很脆弱的,网络资源也有限,因此我们有必要追踪每个网络请求,了解它们经过了哪些微服务,延迟多少,每个请求所耗费的时间等。只有这样才能更好地分析系统瓶颈,解决系统问题。在 Spring Cloud 中,我们可以使用 Spring Cloud Sleuth 组件来实现微服务追踪。


第 13 章 服务治理: Spring Cloud Consul 和 Spring Cloud ZooKeeper

在前面的章节中,读者已经接触到了 Spring Cloud 默认集成的服务治理框架 Spring Cloud NettlixEureka。在本章,我们将接触到新的服务治理框架,以便读者在实际应用中有多种选择。


第四部分(部署篇)


第 14 章系统发布上线

通过前几章的学习,我们顺利完成了应用的开发,仅仅完成框架搭建和功能开发是不够的,我们还需要将应用发布到服务器上供客户端访问。本章中,我们将开始详解应用的发布。


第 15 章使用 Kubernetes 部署分布式集群

容器技术的出现带给了我们新的思路。我们可以将服务打包成镜像,放到容器中,通过容器来运行服务,这样可以很方便地进行分布式管理,同样的服务也可以很方便地进行水平扩展。Docker 是容器技术方面的佼佼者,它是一-个开源容器,而 Kubernetes (以下简称 K8S)是一个分布式集群方案的平台,它和 Docker 就是天生的一对。 通过 K8S 和 Docker 的配合,我们很容易搭建分布式集群环境。下面,我们就来看一下 Docker 和 K8S 的诱人之处。


欢迎大家扫码来关注公众号博主,获取文章全部资料,此公众号会持续更新技术干货、不定期分享 Java 进阶面试宝典、Java 核心知识、架构书籍电子版

心知识、架构书籍电子版


用户头像

周老师

关注

精通java热衷于分享java领域资料,感谢支持 2020.06.09 加入

还未添加个人简介

评论

发布
暂无评论
覆盖全网的阿里微服务架构有多牛:K8S+实战+笔记+项目教程