本课程专注于微服务架构的理论、架构设计、具体实现技术,真正让微服务架构落地
从微服务架构的基本理论学起,系统学习微服务架构设计和实现的常用技术,并组合起来构建出分布式的、高可扩展的微服务系统架构
Docker实战、SpringBoot开发实战、SpringCloud开发实战(Eureka、Ribbon、Hystrix、Feign、Zuul、Spring Cloud Config、Spring Cloud Bus等)、
Kafka开发实战
一:微服务架构基本理论、架构特点、技术框架整体概览、微服务架构技术栈等
二:Docker实战
从基础使用到基本原理、制作自己的镜像、构建自己的Docker仓库、使用很多实用镜像(比如:MySql、Redis、ES等)、Docker编排等
三:SpringBoot开发实战
理解并掌握SpringBoot开发的各种技术和基本原理,并结合实际应用讲解Web开发,以及结合常用的外部框架(比如:数据源、Redis、ES、ActiveMQ、Shiro等)
四:SpringCloud开发实战,大致包括:
Eureka、Ribbon、Hystrix、Feign、Zuul、Spring Cloud Config、Spring Cloud Bus等
五:Kafka开发实战
从基础讲起,基本概念、基本开发、集群,直到背后的设计原理,如: Topic和Log、日志存储机制、分布式、生产者、消费者抽象模型、消费者组、偏移量和消费者的位置、消费者组和主题订阅、Zookeeper在Kafka中的应用、持久性、高效率、消费者、消息传递保障、副本集、Leader选举、日志压缩等
六:微服务架构一课程小结
把所学过的知识组合成微服务架构、微服务架构体系知识展望
20年Java开发和使用经验,多年的首席架构师和CTO,拥有Sun的多项Java和J2EE方面的技能认证,拥有丰富的开发经验和深厚的技术沉淀,精通Java/JavaEE相关技术和多种开源框架,尤其擅长系统分析和架构设计。
拥有多年项目经理、技术部经理的管理经验,参与和领导了上百个大中型项目的设计和开发,在互联网应用系统架构、系统设计、应用级框架和中间件开发等方面具有很多经验和领悟。
原创著作《研磨设计模式》和《研磨Struts2》广受好评,尤其是《研磨设计模式》,一直稳居原创设计模式类图书第一的位置,并输出版权到台湾。
更为难得的是,入行20年,仍然奋战在技术一线,深知一线架构师需要掌握哪些技术、掌握到什么程度、一线架构设计会遇到哪些坑、如何才能做出最合适的架构设计,经验最难得!老师把这些经验和感悟都融合到课程中,能帮你节省很多走弯路的时间。
第01节课:整体课程介绍
-------以下为微服务架构基础理论部分-----------
第02节课:微服务基础:微服务是什么、微服务和SOA
第03节课:单体应用面临的问题、微服务架构的特点
第04节课:应用微服务需要思考的问题、微服务架构技术栈
-------以下为Docker实战部分--------------
第05节课:Docker基础:是什么、有什么、Docker架构、能干什么
第06节课:Docker的技术组件、Docker和传统虚拟机技术、Docker安装
第07节课:Docker的基本使用:镜像的各种操作、容器的各种操作
第08节课:理解Docker镜像:文件系统叠加、写时复制、镜像格式、操作补充
第09节课:Dockerfile第一部分:基础知识、Dockerfile基本命令和使用示例(FROM、MAINTAINER、RUN、EXPOSE、WORKDIR、USER、CMD)
第10节课:Dockerfile第二部分:Dockerfile基本命令和使用示例(ENTROYPOINT、ENV、ADD、COPY、VOLUME、ONBUILD);Dockerfile编写最佳实践
第11节课:制作自己的镜像示例第一部分:准备工作、编写Dockerfile、使用Dockerfile来制作镜像
第12节课:制作自己的镜像示例第二部分:启动容器、关于web应用放的位置、使用docker commit来制作镜像
第13节课:在自己制作的镜像基础上,来演示前面学习的Dockerfile中的各个命令的用法
第14节课:容器卷管理:数据卷的概念、增加数据卷、将主机目录挂载为数据卷、创建、挂载数据卷容器等
第15节课:Docker仓库第一部分:搭建私有仓库、私有仓库基本操作
第16节课:Docker仓库第二部分:配置Docker Registry管理界面、使用web界面来管理私有仓库
第17节课:使用Mysql镜像
第18节课:使用Redis镜像
第19节课:使用ElasticSearch镜像、安装自己的IK等
第20节课:容器连接:功能介绍、基本使用、使用容器连接来通信
第21节课:Docker编排第一部分:Docker-compose简介、安装、基本示例
第22节课:Docker编排第二部分:Docker-compose yml文件的配置、Docker-compose 的networks配置
第23节课:Docker集群管理工具介绍、Docker网络初步、Docker API介绍等
-------以下为SpringBoot开发实战部分-------
第24节课:SpringBoot是什么、能干什么、HelloWorld
第25节课:HelloWorld进阶第一部分:加入数据层、添加java配置、添加Service及实现
第26节课:HelloWorld进阶第二部分:添加Controller实现、添加页面,使用ThymeLeaf、启动运行
第27节课:SpringBootApplication注解:查看源码来理解、@Configuration、@ComponentScan、@EnableAutoConfiguration
第28节课:SpringApplication执行流程:查看源码来理解整个启动流程
第29节课:起步依赖:什么是起步依赖、好处、目前有哪些起步依赖、调整起步依赖
第30节课:理解自动配置并代码示例,自定义配置第一部分:属性源及优先级、可调整的属性、自定义属性、参数间引用
第31节课:自定义配置第二部分:使用自定义配置文件、配置随机值、配置文件的放置位置、微调自动配置示例
第32节课:自定义配置第三部分:配置日志
第33节课:自定义配置第四部分:定制错误页面、使用profile
第34节课:部署第一部分:部署可执行jar、部署war、部署到外部tomcat
第35节课:部署第二部分:部署到Docker第一种方法:直接上传jar/war制作镜像的方式
第36节课:部署第三部分:应用docker-maven-plugin插件工具来直接编译,生成docker镜像
第37节课:开发者工具:环境构建、自动重启、LiveReload、默认的开发时属性
第38节课:测试:以前的测试方式、SpringBoot中测试写法的三种方式
第39节课:Actuator第一部分:概述、启用Actuator、autoconfig、beans、configprops 、env、health、自定义health检测器
第40节课:Actuator第二部分:info、metrics、自定义Counter、mappings等;常见配置;Web应用开发基础第一部分
第41节课:Web应用开发基础第一部分:静态文件、自定义加载静态文件示例、添加拦截器配置、国际化、支持的模板引擎
第42节课:Thymeleaf第一部分
第43节课:Thymeleaf第二部分
第44节课:Thymeleaf第三部分
第45节课:使用JSP:配置变化、开发及部署运行
第46节课:使用Servlet、Filter、Listener;使用CommandLineRunner
第47节课:文件上传的实现示例;使用xml配置
第48节课:使用Redis
第49节课:配置使用druid数据源;使用Shiro
第50节课:使用ActiveMQ
第51节课:使用ElasticSearch
第52节课:Docker升级到最新的CE版:安装、命令上的变化、配置上的变化、docker-toolbox的使用
-------以下为SpringCloud开发实战部分--
第53节课:SpringCloud介绍、Eureka简介、Eureka高层架构、HelloWorld第一部分:启动EurekaServer
第54节课:HelloWorld第二部分:开发服务提供者、开发服务消费者、实现远程调用
第55节课:Eureka高层架构第二部分,Eureka基本概念(服务注册、服务续约、获取注册列表信息、服务下线、服务剔除 );为什么注册服务这么慢、和Zookeeper比较、自我保护模式
第56节课:Eureka Server集群:两两注册、单方面有指向的服务传播与同步机制
第57节课:Eureka Server之间通信、配置选项、添加连接权限、状态页和健康指标
第58节课:Ribbon简介、应用架构、HelloWorld
第59节课:Ribbon核心组件第一部分:IRule、IPing、ServerList
第60节课:结合Eureka、Ribbon核心组件第二部分:ServerListFilter、ServerListUpdater、IClientConfig、ILoadBalancer
第61节课:重试机制、@RibbonClient、自定义负载均衡器
第62节课:Hystrix简介、Hystrix的设计原则、HelloWorld、基本使用:HystrixCommand和HystrixObservableCommand、命令执行方法、命令名称等
第63节课:基本使用第二部分:两种写法、同步调用、异步调用、反应式调用、会退降级、Command Thread-Pool设置、错误传播
第64节课:基本使用第三部分:请求缓存、请求合并、fallback嵌套使用
第65节课:在SpringCloud中使用Hystrix、理解Hystrix的Dashboard
第66节课:参数配置第一部分:属性优先级、请求上下文、重点理解命令执行的一系列参数,并演示
第67节课:参数配置第一部分:回退、重点理解断路器的一系列参数,并演示、度量指标、ThreadPool配置
第68节课:Hystrix的工作流程;熔断机制、雪崩效应等
第69节课:断路器的原理,并重点演示各种断路器的配置;依赖隔离:线程隔离、信号量隔离
第70节课:Feign简介:是什么、能干什么、特性;HelloWorld
第71节课:Feign里面的Ribbon配置-1,重点演示了:程序配置、配置文件配置、全局配置、超时(体会Ribbon超时和Hystrix超时的不同)
第72节课:Feign里面的Ribbon配置-2,重点演示了重试机制;参数绑定:演示了各种常用绑定参数的方式
第73节课:Feign的默认配置、自定义配置:演示切换Contract;细致学习@FeignClient,理解它的每个属性的功能及其用法
第74节课:Feign里面配置使用fallback和fallbackFactory;自定义的Encode、Decode的编写
第75节课:演示自定义的ErrorDecode;FeignClient的工作过程
第76节课:理解Feign继承特性的实现方式,演示编写好sample-api和sample-user的实现
第77节课:演示编写好sample-web工程,并和sample-api和sample-user组合起来演示整个调用过程
第78节课:演示修改Feign的源代码,来解决Feign使用继承方式后,带来的RequestMapping映射错误
第79节课:Feign中的Hystrix配置,重点演示了服务降级的做法,并结合实际应用的使用方式,讲解了fallbackFactory;请求压缩配置;日志配置
第80节课:Zuul简介:是什么、能干什么、有什么;HelloWorld第一部分
第81节课:HelloWorld第二部分;传统路由配置
第82节课:服务路由配置:默认规则、自定义路由映射关系、路径匹配;Cookie与头信息
第83节课:重定向、路由回退:Hystrix和ribbon支持、Hystrix的路由回退
第84节课:请求路由其它配置、请求过滤器概述
第85节课:高层架构、请求生命周期、过滤器类型与生命周期、核心过滤器
第86节课:自定义过滤器:修改request数据和response数据
第87节课:异常处理:自定义异常处理过滤器;重试机制
第88节课:饿汉式加载、上传文件、健康检查
第89节课:Spring Cloud Config简介:是什么、有什么、能干什么;HelloWorld第一部分:搭建自己的gitlab
第90节课:HelloWorld第二部分:构建Config Server、构建Config client
第91节课:HelloWorld第三部分:运行并测试;理解客户端获取配置信息的过程
第92节课:动态配置Git仓库的URL;配置多个Git仓库;子目录存储
第93节课:获取本地文件配置;获取本地文件系统;使用SVN仓库第一部分:搭建svn环境
第94节课:使用SVN仓库第二部分:使用SVN仓库作为配置文件存放的服务器
第95节课:动态刷新配置;启动时克隆配置;安全保护
第96节课:加密解密:安装jce1.8、相关端点、对称加密、非对称加密
第97节课:高可用;快速失败与重试
-------以下为Kafka开发实战部分-----------
第98节课:Kafka简介:是什么、有什么、能干什么、消息中间件、适用场景
第99节课:Kafka核心API、Kafka拓扑结构、安装配置、HelloWorld
第100节课:Topic和Log、分区设计、日志存放、日志格式、日志分段、存储结构、日志操作
第101节课:基本概念、Kafka的消费者:消费者抽象模型、消费者组
第102节课:偏移量和消费者的位置、消费者组和主题订阅、发现消费者故障、Kafka保证
第103节课:Java Client API开发第一部分:AdminClient开发第一部分
第104节课:Java Client API开发第二部分:AdminClient开发第二部分
第105节课:Java Client API开发第三部分:生产者开发
第106节课:Java Client API开发第四部分:消费者开发第一部分
第107节课:Java Client API开发第五部分:消费者开发第二部分
第108节课:基本理论讲述中要代码演示的:日志分区、Kafka做队列和订阅发布、消费者组等
第109节课:集群:启动多个broker、使用集群,集群下开发
第110节课:Zookeeper在Kafka中的应用:Broker注册、Topic注册、消费者注册、生产者负载均衡、使用注意事项等
第111节课:Kafka原理之生产者、之持久性、之高效率
第112节课:Kafka原理之消费者:推还是拉、如何高效追踪已经消费的消息;Kafka原理之消息传递保障
第113节课:Kafka原理之副本集、Kafka原理之Leader选举
第114节课:Kafka的监控:Kafka Manager介绍、安装、配置和使用
第115节课:Kafka的安全:概述、使用SSL加密和认证
第116节课:Kafka Stream介绍:是什么、特点、核心概念、高层架构;连接器介绍:是什么、能干什么、核心概念、高层概览
第117节课:Kafka原理之日志压缩、Kafka配置推荐、最佳实践
第118节课:Spring Cloud Bus简介:是什么、能干什么、为何被称为总线;HelloWorld
第119节课:原理分析、应用上下文ID、局部刷新、架构改进
第120节课:追踪总线事件、传播自定义的事件
第121节课:微服务架构小结:把所学过的知识组合成微服务架构、微服务架构体系知识展望
1:有一定工作经验,还未从事架构工作,但想要向架构方面发展的朋友
2:已经开始从事架构工作,但想要系统学习提升的朋友
3:了解一些微服务架构的知识,但是一直停留在理论上,不会实际操作,也无法让这些理论知识落地的朋友
4:有一定开发经验,想要系统学习微服务架构方面的知识,扩展知识面和提升开发能力的朋友
1:本课程是关注于架构设计,不关注业务设计,所以想要学习业务建模、软件的概要或详细设计的朋友,不适合选择本课程,对于软件设计方面的内容,我们会开设专门的软件设计类课程进行讲述,比如:框架设计、API设计、系统建模、设计模式综合应用、软件系统重构等等。
2:毕竟软件架构和软件设计关注的是不同层面的东西,当然,在国内目前的情况是,很多公司的软件架构和软件设计是同一批人员。不过由于内容实在太多,因此我们把软件架构和软件设计分开成不同的课程体系。
登录后才能获取具体下载信息,请点击前往登录
您的账号信息不全,需完善信息才能获取具体下载信息,请点击前往完善信息
点击查看下载信息