杨波 06-12 微服务技术专家 eBay 开放平台 研发
12-15携程 微服务核心中间件
拍拍贷框架研发技术总监 容器云平台研发 云原生
Api 微服务 案例驱动型 课程 原理+ 编程技术结合 + 工具
Saas 多租户 开源项目 https://github.com/geektime-geekbang/staffjoy
微服务架构
一键部署k8s容器
springboot框架 研发环节 前后分离
- 需求
- 架构设计
- 框架搭建
- 服务实现
- mock + 安全测试
- 可运维架构
- 容器云部署
02丨背景说明
devops
- 前后端分离 并行开发 技术要素
- dubbo springcloud kubernetes 微服务 主流开发 选型
- 中台架构 架构设计 技术栈选型
- spring boot 封装 应对 微服务架构 与 需求
- 登录验证 授权 安全框架
- 网关
- 国内 30% spring框架
- 微服务分布式系统 测试技术
- 分治隔离 分层测试
- saas 多租户 租户 隔离
- 配置 监控告警 部署 企业级可运维
- docker 打包 > 物理/虚拟机
- 软件工程
课程背景介绍 需求说明
目标内容
系统架构设计 技术栈选型
单页Web应用(single page web application,SPA)
业务边界拆分 解耦
单块架构
拆分时期 : 单块应用 耦合 影响 开发创新 进度
面向对象 面向组件
面向微服务
为何采用微服务架构
restfui 微服务
account 微服务 注册 认证 账户信息管理
company 微服务 团队 雇员 班次 核心业务 管理
独立数据库
bot api 消息转发服务 缓冲 通知消息 代理 屏蔽可通知方式 的变更
sms
mail 通知消息微服务
whi am i 前端消息 获取 登录用户详细信息 session 用户会话
前端 mvc应用
反向代理 网关 路由访问 登录鉴权 访问控制 唯一具有 公网ip 服务 json_http
微服务 架构 中心总体思想
应对系统复杂性 分而治之
单一职责 业务划分 受控 易于变更
开发团队 快速并行 交付
逻辑独立性
子域 继续拆分服务
springrest 微服务
springdata gpa
mvc Thymeleaf
servlet.filter 安全路由
支持 云原生 一键部署
共享数据库 的 逻辑隔离机制 公司为 隔离单位
用户在网关鉴权 服务调用 也有相应 鉴权机制
保护 数据 隔离 安全性
架构设计和技术栈选型 数据和接口模型设计:账户服务
数据库 模型设计
账户服务
数据和接口模型设计:公司服务
核心业务模型 七个 表
一对多
数据和接口模型设计:业务服务
技术栈 选型
面向服务架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)进行拆分,
并通过这些服务之间定义良好的接口和协议联系起来。
阿里
net
谷歌
引进的 技术解决方案
分布式微服务开发框架
自成一体 架构缺乏一致性 同时维护多套体系
深入理解
交付 服务 需要 基础设施支撑
配置 :
一次性配置 数据库连接字符串
运行期动态配置 缓存过期时间