《Spring Boot & Kubernetes 云原生微服务实践》回顾

背景

前一段时间把极客时间的《Spring Boot & Kubernetes 云原生微服务实践》这一课程学完了,感觉有不少收获,至少能够确认之前的不少做法是正确的当然也有不少野路子。总想抽点时间做一下回顾,记录一下。

课程介绍

课程内容一共由94讲,内容还是比较丰富的,本文只能起到稍微丰富的导读作用。

讲师介绍

杨波,资深架构师,微服务技术专家。曾在拍拍贷担任基础架构研发总监,主导了拍拍贷的微服务升级改造,同时投入了很大资源进行容器云平台的研发,推动云原生技术在拍拍贷的试点和落地。
2012~2015 年,在携程担任框架研发总监,主导微服务核心中间件的研发和 SOA 体系建设,推动了携程微服务架构的升级改造。
更早之前,曾在 eBay 中国研发中心作为核心开发人员参与 eBay 开放 API 平台的研发工作。 杨波老师具有丰富的一线实战经验,多次在 InfoQ 发表技术文章,并在大型技术会议上进行分享,受到广泛好评。

课程目标和内容

  1. 掌握微服务架构和前后分离架构设计

  2. 掌握基于 Spring Boot 搭建微服务基础框架

  3. 进一步提升 Java/Spring 微服务开发技能

  4. 掌握 Spring Boot 微服务测试和相关实践

  5. 理解 SaaS 多租户应用的架构和设计

  6. 理解可运维架构理念和相关实践

  7. 掌握服务容器化和容器云部署相关实践

  8. 理解云时代的软件工程流程和实践

教学系统架构

在这里插入图片描述

课程的前置条件

  • 掌握基本的Java后端开发基础知识(java基本语法,IDE使用,maven的使用)
  • 拥有至少1个上点规模的项目的开发经验
  • 听过docker,Kubernetes,微服务等概念
  • 敢于挑战和富有技术热情

精彩推荐

主流微服务技术栈的对比和分析

本部分分析了Dubbo,SpringCloud和Kubernetes这三种微服务技术体系的优劣,在不同团队和场景下的适用程度。最后给出了SpringBoot+Kubernetes的技术栈建议。

在这里插入图片描述
在这里插入图片描述

JWT在小型微服务系统中的应用方式

在这里插入图片描述

微服务开发中常见问题实现方式

在这里插入图片描述

  • 微服务的代码组织形式
  • 统一异常处理实现方式
  • 检查注解的实现
  • 返回值的统一封装
  • 采用域名隔离具体IP限制
  • 采用profile隔离各种场景配置
    在这里插入图片描述

各种实用工具

  • swtich hosts
  • Kubernetes如何配置
  • docker compose如何使用
  • .env的使用
  • Sentry
  • swagger
  • skywalking

各种环境的部署实操演示

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

主要收获

  • 真正了解Docker compose,并将公司的项目也写成了docker compose实现一键式安装和启动,将环境准备时间降低到30分钟
  • 了解了如何进行参数配置以及不同profile的常见配置方式
  • 了解到了Apollo和skywalking,考虑尝试后替换SpringConfig和Zipkin
  • 了解到一线大厂微服务开发的常见实现方式
  • 了解到了JWT在微服务下的应用方式,准备应用在项目中。
  • 看到了在阿里云上部署Kubernetes集群的全过程,大大降低了上云的难度

参考资料

  • https://time.geekbang.org/course/intro/204
  • https://github.com/spring2go/staffjoy-ppt
  • https://github.com/spring2go/staffjoy
发布了142 篇原创文章 · 获赞 70 · 访问量 19万+

猜你喜欢

转载自blog.csdn.net/zhaoenweiex/article/details/102734387