第一部分: 微服务架构最佳实践
课程目标:
1.了解微服务诞生的背景
2.了解SpringCloud微服务规范
3.掌握Spring Cloud Alibaba 解决方案中的核心组件的基础应用
4.掌握Spring Cloud Alibaba 解决方案下单点登陆系统的设计以及解决方案.
核心技能点:
1.基于Nacos 的服务注册、发现以及配置。
2.基于RestTemplate,Feign实现服务间的远程调用。
3.基于Ribbon实现服务调用时的负载均衡设计
4.基于Sentinel实现服务的限流,降级。
5.基于Spring Cloud Gateway实现API访问入口的统一管理。
6.基于Spring Security,JWT,Oauth2实现统一的单点登陆系统(SSO)。
第二部分:Docker技术最佳实践
课程目标:
1.了解Docker诞生的背景
2.了解Docker技术的优势,劣势。
3.熟悉Docker的基本架构设计。
4.掌握Docker平台下的镜像,容器,数据卷等核心概念
5.掌握Docker环境下镜像的下载,查看,保存,导入,删除等基本操作
6.掌握Docker环境下容器的启动,进入,查看,停止,重启,日志查看等基本操作
7.掌握Docker平台下数据卷及目录挂载的意义,数据卷的创建,查看以及应用方式
8.掌握Docker平台下镜像的制作,Dockerfile的基本语法结构。
9.掌握Docker平台下常用的镜像的安装,例如mysql,redis,nginx,nacos等。
10.掌握Docker平台下容器互联方式的基本实现。
核心技能点:
1.docker 的安装,服务的启动,重启,停止,开机重启等基本指令的应用
2.docker 平台下镜像(image),容器,数据卷,网络等基本操作
3.docker 平台下常用服务(mysql,redis,nginx,nacos)的安装及基本应用。
第三部分:Redis技术最佳实践
课程目标:
1.了解redis诞生的背景
2.熟悉Redis数据库的基本特点
3.熟悉Redis的常用数据类型及基本指令的操作
4.掌握Java中操作Redis的核心API以及应用过程
5.掌握Redis在Java项目中的应用实践(例如投票系统,单点登陆系统等)
6.掌握Redis中持久化的目的,持久化的方式及各自的特点。
7.掌握Redis中的事务处理方式,常用指令的应用。
8.掌握Redis中的主从架构,哨兵机制,集群架构的设计及搭建过程。
核心技能点:
1.Redis在docker环境下安装,登陆,退出。
2.Redis中string,hash,list,set等数据类型的基本应用
3.Redis客户端API中Jedis 的基本应用,连接池的的设计。
4.Redis在springboot工程基于RedisTemplate的整合应用。
5.Redis中RDB和AOF方式的持久化特点以及生产环境的配置。
6.Redis中基于乐观锁方式的事务控制实践
7.Redis主从架构,哨兵机制,集群架构的演进以及实现
第五部分:总结(Summary)
Spring Cloud Alibaba 微服务设计
1.一种软件架构设计思想(服务治理~软件即服务,然后分而治之,独立开发,测试,发布,部署,运行)
2.一套微服务软件架构解决方案(Spring Cloud Alibaba)
3.五大微服务核心应用组件(nacos,feign,ribbon,sentinel,gateway)
4.一套单点登录系统(2套解决方案+5个微服务组件+3个认证授权技术)
Docker虚拟化技术应用实践
1.一种新的运维思路?(容器化技术~快速发布,部署,隔离)
2.一个虚拟化引擎(Docker平台),七大systemctl基本操作(start,status,stop,restart,enable,disable).
3.两大Docker平台核心对象?(镜像-image,容器-container)
4.八个常用镜像操作指令(pull,images,inspect,history,save,load,rm,run)
5.七个常用容器操作指令(start,restart,logs,exec,exit,stop,rm)
6.两种文件或目录数据映射方案?(数据卷-volume,直接目录挂载-v)
7.一种镜像制作(docker build),两套镜像加载(docker pull,docker load),一套镜像保存方案(docker save).
8.一个虚拟网络建立和应用方式?(docker network create,–network)
9.常用镜像下载,容器启动解决方案?(MySql,Redis,Nginx,Nacos,…)
Redis分布式缓存技术应用
1.一种性能优化策略?(从内存加载数据)
2.两种缓存(内存)应用套路?(本地缓存和分布式缓存)
3.Redis中的5种数据类型(string,hash,list,set,zset,…)
4.两套Java客户端API?(Jedis,RedisTemplate)
5.3种数据可靠性方案?(持久化,事务,主从架构,哨兵,集群)
6.结合菜单模块实现两种综合性缓存应用解决方案?(RedisTemplate+redis,Aop+redis)
阶段项目核心业务逻辑设计及实现(jt-cloud-admin):
1.京淘权限控制子系统(微服务架构):单点登录(SSO),基于资源的权限控制,基于用户行为的日志记录
2.…