花一周时间,啃完这套京东架构师独家微服务笔记,成功面进字节
前言
基于 Spring Cloud 的微服务设计和开发,已经越来越多地得到了更多企业的推广和应用,而 Spring Cloud 社区也在不断的迅速发展壮大之中,近几年时间,Spring Cloud 的版本也经历了快速的迭代和更新。
本场小编将带领大家体验如何使用 Spring Cloud 从微服务的设计、开发到部署、发布的全过程,在这一过程中,您将可以学到,怎么快速构建一个 Spring Cloud 项目工程,怎么使用最新版本的 Spring Boot 开发框架开发微服务应用,以及如何使用 Consul 进行微服务治理,并以此构建一个高性能的分布式环境,同时体会如何使用 Docker 进行微服务发布。
小编接下来分享的这份学习笔记将以图片的形式展现出来,小编会阐述详细的知识小结。
一、Spring Cloud 概述
本章将会简述 Spring Cloud 的功能,描述什么是 Spring Cloud ,它能为我们带来什么,为后面学习该框架的知识打下理论基础。
传统的应用
架构演进
架构要求
学习方面的准备工作
下载本书的软件及源码
导入本书的案例
微服务与 Spring Cloud
Spring Cloud 与 Netflix
什么是微服务
Spring Cloud 的主要模块
小结
该学习笔记获取方式前往资料库即可获取已整理好的资料集锦
二、搭建开发环境
工欲善其事,必先利其器 在讲述本书的技术内容前,先将开发环境搭建好,本书所涉及的基础环境将在本章准备,
安装 Eclipse
Eclipse 版本
在 Eclipse 中配置 Maven
安装与配置 Maven
关于 Maven
下载与安装 Maven
配置远程仓库
Spring Boot 的配置文件
默认配置文件
指定配置文件位置
YML 文件
运行时指定 profiles 配置
热部署
Spring Boot
Spring Boot 简介
新建 Maven 项目
编写启动类
编写控制器
发布 RESTWebService
小结
三、微服务发布与调用
Eureka 介绍
关于 Eureka
Eureka 架构
服务器端
服务提供者
服务调用者
Eureka 集群搭建
改造服务调用者
改造服务提供者
本例集群结构图
改造服务器端
编写 REST 客户端进行测试
第一个 Eureka 应用
构建服务器
编写服务提供者
服务器注册开关
编写服务调用者
Eureka 的常用配置
心跳检测配置
配置与使用元数据
注册表抓取间隔
自我保模式
服务实例的健康自检
程序结构
实现应用健康自检
使用 Spring Boot Actuator
服务查询
四、负载均衡
Ribbon 介绍
Ribbon 简介
负载均衡器组件
Ribbon 子模块
第一个 Ribbon 程序
编写服务
Ribbon 的配置
编写请求客户端
在 Spring Cloud 中使用 Ribbon
准备工作
使用配置文件设置 Ribbon
使用代码配置 Ribbon
Spring 使用 Ribbon 的 API
Ribbon 的负载均衡机制
负载均衡器
Ribbon 自带的负载规则
自定义负载规则
自定义 Ping
Pingg 机制
其他配置
RestTemplate 负载均衡
@LoadBalanced 注解概述
使用自定义拦截器以及注解
编写自定义注解以及拦截器
在控制器中使用 RestTemplate
五、REST 客户端 Feign
REST 客户端
使用 CXF 调用 REST 服务
Feign 框架介绍
使用 Restlet 调用 REST 服务
请求参数与返回对象
第一个 Feign 程序
在 Spring Cloud 中使用 Feign
Spring Cloud 整合 Feign
默认配置
Feign 负载均衡
可选配置
自定义配置
压缩配置
使用 Feign
编码器
解码器
自定义编码器与解码器
XML 的编码与解码
使用第三方注解
自定义 Feign 客户端
Feign 解析第三方注解
接口日志
请求拦截器
六、Spring Cloud 的保护机制
概述
实际问题
集群容错框架 Hystrix
传统的解决方式
Hystrix 的功能
第一个 Hystrix 程序
准备工作
调用错误服务
客户端使用 Hystrix
Hystrix 的运作流程
在 Spring Cloud 中使用 Hystrix
整合 Hystrix
默认配置
命令配置
缓存注解
Feign 与 Hystrix 整合
合并请求注解
Hystrix 的使用
命令执行
回退
属性配置
回退的模式
断路器关闭
断路器开启
合并请求
隔离机制
请求缓存
该学习笔记获取方式前往资料库即可获取已整理好的资料集锦
七、微服务集群网关
Zuul 框架介绍
关于 Zuul
Spring Cloud 集群提供了多个组件,用于进行集群内部的通信,例如服务管理组件 Eurek ,负载均衡组件 Ribbon 。如果集群提供了 API 或者 Web 服务,需要与外部进行通信,较好的方式是添加一个网关,将集群的服务都隐藏到网关后面。
Zuul 的功能
在 Web 项目中使用 Z u u l
Web 项目整合 Zuul
过滤器运行机制
测路由功能
在微服务集群中初试 Zuul
集群搭建
Zuul Http 客户端
路由到集群服务
路由配置
简单路由
Ribbon 路由
跳转路由
自定义路由规则
Zuul 的其他配置
请求头配置
Zuul 与 Hystrix
路由端点
Zuul 中预加载 Ribbon
Zuul 功能进阶
过滤器优先级
动态加载过滤器
自定义过滤器
禁用过滤器
@EnableZuulServer 注解
态路由
error 过滤器
八、微服务与消息驱动
Spring Cloud Stream 介绍
Spring Cloud Stream 介绍
Stream 框架的组成部分
关于 Stream 框架
消息代理中间件
Apache Kafka 框架
关于 Kafka
编写生产者
运行 Kafka 服务器
编写消费者
消费者组
RabbitMQ 框架
RabbitMQ 和 AMQP
编写生产者
下载与运行
交换器、绑定与队列
编写消费者
开发消息微服务
准备工作
编写消费者
编写生产者
更换绑定器
消费者组
Sink、Source 与 Processor
九、集群配置中心
概述
关于 Spring Cloud Config
搭建 SVN 环境
应用结构
引导程序简介
构建第一个例子
创建服务器
创建客户端
配置 SVN 仓库
从客户端读取 SVN 配置
刷新配置
目录配置总结
刷新 Bean
其他配置
服务器健康指示器
安全配置
客户端的错误提前与重试机制
访问服务器配置
配置的加密和解密
为服务器安装 JCE
SVN 存储加密数据
加密和解密端点
非对称加密
整合使用
准备工作
整合 Zuul
配置服务器、客户端整合 Eureka
刷新单个节点配置
整合 Spring Cloud Bus 刷新配置
十、微服务跟踪
概述
实际问题与 Sleuth
Sleuth 的基本概念
服务跟踪系统
项目准备
Sleuth 整合 ELK
关于 ELK
下载 ELK
使用 Logstash 读取 JSON
运行 Elasticsearch
使用 Logback 转换 JSON
使用 Kibana 展示数据
Sleuth 整合 Zipkin
Zipkin 简介
配置微服务
构建 Z i p kin 服务器项目
查看数据
使用消息采集数据
使用 MySQL 保存数据
十一、微服务数据库实战
概述
关于 Spring Data
Spring Data 的模块
Spring Data 的功能
Spring Data 与 JPA
构建项目
自定义数据存储逻辑
数据访问层与业务层
使用@Query 注解
方法名查询
Spring Data 与 Redis
Redis 的安装与配置
使用 Jedis
Redis 的数据类型
构建 Spring Data 项目
自定义数据存储逻辑
数据访问层与业务层
方法名查询
Spring Data 与 MongoDB
MongoDB 的概念
安装 MongoDB
配置权限
数据访问层与业务层
构建项目
自定义数据存储逻辑
使用@Query 注解
方法名查询
十二、案例实战
概述
案例概述
表现层技术
案例技术选型
Spring Boot 与 JSP
配置
构建项目
打包部署
模板引擎 Thymeleaf
关于 Thymeleaf
Spring B o o t 整合 Thymeleaf
调用 Bean 方法
获取请求数据
遍历集合
表单提交
图书管理案例
运行案例
案例模块
新建图书
数据库
用户登录
图书展示
案例架构
小伙伴们有兴趣想了解内容和更多相关学习资料的请点赞收藏+评论转发+关注我,后面会有很多干货。
我有一些面试题、架构、设计类资料可以说是程序员面试必备!所有资料都整理到网盘了,需要的话欢迎下载!私信我回复【07】即可免费获取
原文出处:xie.infoq.cn/article/789224e08e6d0f66d38e36c44
花一周时间,啃完这套京东架构师独家微服务笔记,成功面进字节相关推荐
- 京东、宅急送的微服务实践分享(上)- 架构师小组交流会
架构师小组交流会是由国内知名公司技术专家参与的技术交流会,每期选择一个时下最热门的技术话题进行实践经验分享. 本期话题:微服务.微服务架构以其高度的弹性.灵活性和效率的巨大提升,快速受到各领域架构师和 ...
- 来自京东、唯品会对微服务编排、API网关、持续集成的实践分享(上)
架构师小组交流会:每期选一个时下最热门的技术话题进行实践经验分享. 第三期:微服务.微服务架构以其高度的弹性.灵活性和效率的巨大提升,快速受到各领域架构师和技术决策者的关注.它的基本理念是将一个肥大的 ...
- 手把手0基础项目实战(一)——教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)...
本文你将学到什么? 本文将以原理+实战的方式,首先对"微服务"相关的概念进行知识点扫盲,然后开始手把手教你搭建这一整套的微服务系统. 项目完整源码下载 https://github ...
- 手把手0基础项目实战(一)——教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)......
手把手0基础项目实战(一)--教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)... 原文: 手把手0基础项目实战(一)--教你搭建一套可自动化构 ...
- 0基础教你搭建一套可自动化构建的微服务框架(SpringBoot+Dubbo+Docker+Jenkins)
2019独角兽企业重金招聘Python工程师标准>>> 本文你将学到什么? 本文将以原理+实战的方式,首先对"微服务"相关的概念进行知识点扫盲,然后开始手把手教你 ...
- 阿里高级微服务架构师亲手教你搭建一套可自动化构建的微服务框架
这套微服务框架能干啥? 这套系统搭建完之后,那可就厉害了: 微服务架构 你的整个应用程序将会被拆分成一个个功能独立的子系统,独立运行,系统与系统之间通过RPC接口通信.这样这些系统之间的耦合度大大降低 ...
- 分享我如何在7年时间里成长为阿里Java架构师(附学习路线图)
2019独角兽企业重金招聘Python工程师标准>>> 如何更高效的学习? 1.架构师应不应该写代码 总的来说,架构师和程序员在某些方面上有点像产品经理和用户的关系,大部分程序员并不 ...
- Github星标90K?京东架构师一篇讲明白百亿级并发系统架构设计
学习高并发系统设计的原因 高并发到底是什么,想必各位多多少少对此都有所了解,那我在这就不多说了.真正经历过"双11"以及"618"的小伙伴应该都知道,在大促时如 ...
- @程序员,让8年京东架构师为你解析云原生监控和日志解决方案!
监控和日志是大型分布式系统的重要基础设施:监控可以帮助开发者查看系统的运行状态,而日志可以协助问题的排查和诊断. 云原生应用具有分布与动态的特性,而所有此类应用通常都会用到容器和无服务器函数等临时技术 ...
最新文章
- [MOSS开发]:WSS v3授权
- linux Makefile引用与环境变量
- python编写请求参数带文件_python requests 库请求带有文件参数的接口实例
- 手工、工具分别实现cookie注入
- 运用Edraw为WPF应用程序嵌入Office文档的方法总结
- mysql 关联查询_响应时间长?MySQL查询优化教程来了!
- mysql优化 mysql.ini优化
- 电脑科学性计算机怎么用,怎么使用科学计算器59 000×(1+r)-2
- itunes未能连接到iphone_iTunes下载_苹果iTunes官方下载「32位|64位」
- Java基础---数据类型转换和运算符
- 阿里涉足零售 IoT 的猜想
- buu逆向刷题(三)
- Compact Multi-Signatures for Smaller Blockchains学习笔记
- 关于排版的小软件的实现
- 能耗指标与数据中心规模-孙长青
- 创建Mesh-格子地图转NavMesh-可破坏墙壁
- fullcalendar的使用教程
- 苹果x屏幕出现一条绿线_iPhone X 屏幕维修怎么防止被坑?各种屏幕的介绍
- mysql分表动态扩展_小星星 的动态 - SegmentFault 思否
- 多项式计算秦九韶算法
热门文章
- php截取中文第一个字,php中的一个中文字符串截取函数
- kf.qq.xom/product/lol.html,LOL11月8日更新几点结束 英雄联盟11.8更新维护公告
- Linux 时间函数小结
- 2021-2025年中国VCI扩散器行业市场供需与战略研究报告
- 单片机c语言数字频率计课程设计,基于单片机的数字频率计设计开题报告.doc
- 强话一波hooks,这次咱们换个发力点
- HoloLens2之路-Unity2019.4+MRTK2.6配置
- Uncompressing Linux..... done, booting the kernel.
- 防火墙GRE和NAT
- fedora24 安装网易云音乐攻略