腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主

目录:


文章目录

  • 云开发基础
    • 一、传统IT架构的特点
      • 1.软件开发模式:瀑布开发模型
      • 2.软件架构:单体架构
    • 二、业务驱动下的IT架构变革
      • 1.IDC(互联网数据中心Internet Data Center):
      • 2.SAO-面向服务的架构
    • 三、互联网+带来的挑战
      • 1.互联网+时代的业务特征
      • 2.传统基础设施的局限性
    • 四、云计算简介
      • 1.云计算的服务模式
      • 2.云计算解决的问题:
    • 五、云时代的开发方式
  • 腾讯云开发入门
    • 一.腾讯云可用区(机房)
      • 1.优点:
    • 二、腾讯云开发准备
      • 1.开发接入流程
      • 2.实名认证:
      • 3.使用方式
    • 三、账号使用与安全
      • 1.账号分类
      • 2.如何避免安全问题
      • 3.访问管理CAM
      • 4.角色与角色载体
      • 5.通过CAM创建子账号
      • 6.CAM最佳实践
    • 四、开发环境准备
      • 1.本地开发环境(以Java为例):
      • 2.云端开发环境
    • 五、云API简介
      • 1.云API是腾讯云开放生态的基石
      • 2.云API应用场景
      • 3.云API基本结构
      • 4.请求方法
      • 5.使用v3签名
    • 六、API 3.0 Explorer
  • 本地应用迁移到云端
    • 一、本地应用上云基础
      • 1.基本步骤
      • 2.云服务器CVM是一种弹性计算的服务器
      • 3.CVM最佳实例
      • 4.迁移流程
    • 二.负载均衡(Cloud Load Balancer,CLB)
      • 1.功能
      • 2.分类
      • 3.使用步骤
      • 4.API
      • 5.最佳实践
    • 三、弹性伸缩(Auto Scaling,AS)
      • 1.传统方式:
      • 2.弹性伸缩
      • 3.使用流程
      • 4.API
      • 5.最佳实践
    • 四、存储扩容
      • 1.传统集中式存储局限性
      • 2.API
      • 3.最佳实践
      • 4.文件存储CFS
  • 云数据库
    • 一、云数据库MYSQL
      • 1.数据库简介
      • 2.云数据库MySQL
      • 3.数据迁移
      • 4.读写分离
      • 5.云数据库MongoDB
      • 6.云对象存储COS
  • 云原生应用设计与开发
    • 一、云原生简介
      • 1.云原生的演进过程:
      • 2.云原生计算基金会CNCF
      • 3.什么是云原生
    • 二、云原生架构
      • 1.Spring Cloud
      • 2.Service Mesh
      • 3.云原生机构的技术特征
  • TSF介绍与容器化部署
    • 一、腾讯微服务平台TSF
      • 1.功能:
      • 2.整体架构
    • 二、容器介绍
      • 1.云容器TKE介绍
      • 2.Docker基本使用
      • 3.Dockerfile基本使用
      • 4.利用云容器部署TSF
    • 三、TSF容器管理
      • 1.配置管理:
      • 2.应用配置
      • 3.全局配置概述
    • 四、TSF服务治理
      • 1.服务治理:
      • 2.服务发现
      • 3.服务鉴权
      • 4.服务限流
      • 5.服务路由
      • 2.服务发现
      • 3.服务鉴权
      • 4.服务限流
      • 5.服务路由


云开发基础

一、传统IT架构的特点

企业信息化建设系统:OA管理系统、ERP管理系统、CRM管理系统、学生档案管理系统、资产管理系统等。

1.软件开发模式:瀑布开发模型

​ 标准化、阶段清晰、环环相扣

​ 1970年W·Royce提出、最早的软件开发模型、给出固定顺序,将生命周期从上一个阶段向下一个阶段逐级过渡。

阶段 内容
定义阶段 计划、需求分析
开发阶段 设计、编码、测试
维护阶段 运行维护

2.软件架构:单体架构

​ 单体架构是最简单的软件架构,开发速度快、成本低。

​ 常用于传统的应用软件开发及传统Web应用。

二、业务驱动下的IT架构变革

1.IDC(互联网数据中心Internet Data Center):

​ 分为实体服务器托管和租用两种类型。

2.SAO-面向服务的架构

​ 将重复公用的功能抽取为组件,以服务方式给各个系统提供服务。

三、互联网+带来的挑战

1.互联网+时代的业务特征

​ 用户规模大、接入方式多

​ 集中式访问、流量突增

​ 大数据

​ 市场需求变化大

2.传统基础设施的局限性

​ 服务器设备、机房专人维护、前期投入成本高。

​ 倍数部署,资源利用率差、资源浪费

​ 流量突增难以应付不够灵活

四、云计算简介

​ 云计算是一种新的提供资源按需租用的服务模式,一种新型的IDC业务。

云计算 特点
租用资源范围 云计算业务租用的资源范围广泛,不局限于服务器和宽带
服务能力 云计算提供弹性的按需扩展的资源租用服务
资源透明性 用户不需要了解资源的物理信息
运维难度降低 较多的沟通和少量的运维

1.云计算的服务模式

云计算服务模式 内容
SaaS(Software as a Servicve) 软件即服务,通过网络提供软件程序服务
PaaS(Platform as a Servicve) 平台即服务,以服务器平台或者开发者环境提供服务
IaaS(Infrastructure as a Servicve) 基础设施即服务,注重计算资源的共享,消费者通过网络从资源池中获取IT相关的基础设施资源

腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第1张图片

2.云计算解决的问题:

规模大,按需付费,成本大大降低

弹性,优雅应对流量突增,灵活扩展

可靠,快速故障恢复,保证应用高可用

极速、安全、易用

五、云时代的开发方式

​ 基于云特性进行开发,开发出的软件具有水平扩展、低门槛准入和高度解耦复用等云计算特性

​ 开发模式演变:瀑布模型转变为敏捷开发

​ 传统单体架构转变为微服务架构

​ 无服务器


腾讯云开发入门

一.腾讯云可用区(机房)

·大陆:北上广深

·国际:新加坡、多伦多、硅谷

·创建实例可指定、迁移可用区。

1.优点:

·高可用、容灾

·降低访问时延

·数据管理、保护

·收费低

二、腾讯云开发准备

1.开发接入流程

获取主账号->选择使用方式->创建子账号->获取访问密钥->准备开发环境->开始使用

访问密钥包括Secretld和SecretKey,子用户创建时勾选编程访问自动创建,也可以手动创建

2.实名认证:

·个人实名

·企业实名

3.使用方式

·云控制台

·SDK方式

·API方式:

三、账号使用与安全

1.账号分类

账号类型 主账号 子用户 协作者 消息接收者
控制台访问
编程访问
策略授权 默认拥有全部策略
消息通知

子用户、协作者、消息接收者统称为子账号

开发可以直接使用主账号,但是不推荐,因为权限过高,一旦泄露所有资源都受影响

2.如何避免安全问题

·开启MFA保护

·使用子账号访问腾讯云

·分子账号管理用户权限和资源

3.访问管理CAM

用户关联用户组->用户组添加用户->用户、用户组关联策略->用户获取身份凭证

4.角色与角色载体

角色类似于腾讯云用户,可以看作是腾讯云的虚拟账号

能够申请角色的载体叫做角色载体,可以是腾讯云账户,也可以是腾讯云产品

5.通过CAM创建子账号

登录CAM->新建子用户->填写用户信息->设置用户权限->审阅信息和权限->开始使用

6.CAM最佳实践

·使用用户组给子账号分配权限

·最小权限原则

·定期轮转身份凭证

·删除不需要的证书和权限

·使用临时密钥

四、开发环境准备

1.本地开发环境(以Java为例):

·网络环境,访问腾讯云,下载依赖包等

·Java开发环境:JDK1.7以上

·Maven版本:3.5

​ ·修改setting配置为国内下载镜像

​ ·Maven编码过程需要下载依赖,需要网络环境

·Eclipse或者IDEA

​ ·字符集编码:utf-8

2.云端开发环境

Cloud Studio:基于浏览器的继承开发环境

网址:

五、云API简介

1.云API是腾讯云开放生态的基石

快速、高效、灵活、兼容性强

2.云API应用场景

功能组合、定制化需求

3.云API基本结构

·请求url(网址)

·请求头部:公共请求参数

​ ·公共参数是用于标识用户和接口鉴权目的的参数

​ ·公共参数根据签名方法分为两类:

​ ·v3:TC3-HMAC-SHA256,公共参数统一放在HTTP Header请求头部中

​ ·v1:HmacSHA1和HmacSHA256签名方法

​ ·地域列表:不同产品支持地域不同

·请求体:接口参数

4.请求方法

·通信协议:

​ ·腾讯云API的所有接口均通过HTTPS进行通信,提供高安全性的通信通道

·支持的HTTP请求方法:

​ ·POST

​ ·GET

·字符编码:

​ ·UTF-8

5.使用v3签名

申请安全凭证->拼接规范请求串->拼接待签名的字符串->计算签名->拼接Authorization->使用完整的信息访问云API

六、API 3.0 Explorer

提供了在线调用、签名验证、SDK代码生成和快速检索接口等能力


本地应用迁移到云端

一、本地应用上云基础

1.基本步骤

本地服务器(前后端应用)迁移到云服务器->本地数据库迁移到云服务器安装数据库->本地储存迁移到到云端储存

2.云服务器CVM是一种弹性计算的服务器

3.CVM最佳实例

·限制访问

·安全登录

·硬件存储

4.迁移流程

新建云虚拟机,安装部署环境->云虚拟机中新建并初始化数据库->上传本地对象存储数据到云虚拟机->修改应用数据库和存储配置->打包并上传应用到云虚拟机->启动应用,提供服务

二.负载均衡(Cloud Load Balancer,CLB)

1.功能

·对多台云服务器进行流量分发的服务

·负载均衡可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可行性

·负载均衡服务会检查云服务器池中服务器实例的建康状态,自动隔离异常状态的实例

·负载均衡服务具备自助管理、自故障修复、防网络攻击等高级功能,适用于企业、社区、电子服务、游戏等多种应用场景

·提供多协议转发

​ 四层负载均衡(TCP UDP)

​ 七层负载均衡(HTTP HTTPS)

·流量分配算法

​ 加权轮询

​ 加权最小连接数

​ 源地址散列调度算法

·跨可用区容灾

​ ·在同一个地域内采取多可用区部署

2.分类

·负载均衡(应用型负载均衡)

​ 支持TCP/UDP/HTTP/HTTPS协议

​ 提供基于域名URL路径的均衡能力

​ 支持灵活转发

·传统型负载均衡

​ 内网不支持HTTP/HTTPS协议,配置方法简单

3.使用步骤

创建负载均衡->配置负载均衡监听器->配置转发规则->配置健康检查->配置会话保持->绑定云服务器->配置重定向(可选)

4.API

API 接口描述
CreateLoadBalancer 购买负载均衡实例
CreateListener 创建负载均衡监听器
CreateRule 创建负载均衡七层监听器转发规则
RegisterTargets 绑定后端机器到监听器上

5.最佳实践

·推荐使用负载均衡

·负载均衡开启Gzip配置

​ 开启gzip功能对网页进行压缩可以有效降低网络传输的数据量,提升客户端浏览器的访问速度

·负载均衡算法的使用

​ ·加权轮询算法:无状态、简洁和实用性

​ 用户可知每个请求占用后端时间基本相同,如已知rs处理的都是同类型或者相似请求时

​ ·加权最小连接数:适合长时处理的请求服务,如FTP等应用

​ 处理不同的请求,且请求占用后端时间相差较大

​ ·源地址散列调度算法:ip_hash可以实现部分会话保持的效果,能够记住源IP

​ 适合负载均衡无cookie功能的TCP协议,不支持会话保持的场景进行会话保持

三、弹性伸缩(Auto Scaling,AS)

1.传统方式:

·传统手工操作繁琐,配置繁琐易出错

·资源闲置浪费

·无法及时容错

腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第2张图片

2.弹性伸缩

·可以根据业务需求和策略自动调整CVM计算资源

·自动化:自动伸缩实例,无需人工干预

·省成本:适量伸缩实例,节省成本

·容错性:系统自动检测,及时容错

腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第3张图片

3.使用流程

创建启动配置->创建伸缩组->创建伸缩策略

4.API

API 接口说明
CreateLaunchConfiguration 创建启动配置
CreateAutoScalingGroup 创建伸缩组
CreateScalingPolicy 创建告警触发策略
CreateScheduledAction 创建定时任务
CreateNotificationConfiguration 创建通知
CreateLifecycleHook 创建生命周期挂钩

5.最佳实践

·提前部署扩缩容

​ 提前设置Auto Scaling定时策略,实时响应

·低成本应对业务浪涌

​ 实时自动增加或减少CVM实例,并自动完成负载均衡配置,大量节约成本

·自动替换不健康CVM

定时对CVM进行健康检查,自动替换异常实例,保留操作记录

四、存储扩容

1.传统集中式存储局限性

·横向扩展差,交付周期长

·价格昂贵

·数据联通困难

·专人管理,维护成本高

·手动扩容

2.API

API 接口说明
CreateDisks 创建云硬盘
AttachDisks 挂载云硬盘
ResizieDisk 扩容云硬盘
CreateSnapshot 创建快照

3.最佳实践

·多块云硬盘构建RAID组

·多块云硬盘构建LVM逻辑卷

4.文件存储CFS

·集成管理、自动扩展、安全可靠、成本低廉

·支持多客户端共享


云数据库

一、云数据库MYSQL

1.数据库简介

·分类:

​ ·按数据组织方式分为关系型数据库和非关系型数据库

​ ·按数据库架构分为集中式数据库和分布式数据库

·集中式数据库:CDB CRS

`分布式数据库:DCDB MongoDB HBase TiDB TData

·传输服务:DTS

·CDB:主要包括云数据库MySQL、SQL Server、TDSQL、PostgreSQL

2.云数据库MySQL

·特点:高性能、容灾、安全检查、易用

·使用步骤:

登录腾讯云平台->购买云数据库MySQL->初始化数据库->本地数据库数据迁移->修改应用配置->部署应用、访问

3.数据迁移

·迁移本地数据到云数据库方案:

​ ·sql文件导入:数据量少(<=2G)

​ ·在线迁移:DTS数据迁移工具迁移(实时不停服同步)

​ ·离线迁移:备份文件还原

·sql文件导入步骤:

进入对应数据库管理实例->选择要导入的sql文件->选择目标数据库->确认数据导入->完成数据导入,访问数据库

4.读写分离

·简介:

​ ·主数据库处理事务增、改、删操作(INSERT UPDATE DELETE)

​ ·从数据库处理SELECT查询操作

​ ·数据库复制把事务性操作导致的变更同步到从数据库

​ ·一个主数据库、多个从数据库

​ ·云数据库MySQL支持用户创建一个或多个只读实例,可显著降低数据库的读负载能力

·实现步骤:

购买云数据库MySQL->创建只读实例->修改应用数据源配置->修改代码支持读写分离->重新编译、部署应用->验证效果

5.云数据库MongoDB

·关系型数据库的瓶颈:

​ ·高并发读写需求

​ ·海量数据和高效率读写

​ ·高扩展性和可用性

​ ·互联网时代关系数据库很多特性不在需要:

​ ·事务的强一致性

​ ·读写强实时性

​ ·多表关联查询弱化

·MongoDB简介:

​ ·基于开源NoSQL数据库

​ ·高性能

​ ·分布式数据存储服务

​ ·完全兼容MongoDB协议

​ ·适用于面向非关系型数据库的场景

·MongoDB和MySQL的区别

MongDB MySQL
类型 NoSQL数据库 关系型数据库
存储方式 文档存储 行存储
数据量 支持海量数据存储 单表数据过大性能下降厉害
事务支持 不支持 支持
应用场景 表结构不明确、经常变化、海量数据 结构化查询、事务、一致性要求、关联查询

·使用步骤

进入云数据库MongoDB主页->创建实例->初始化实例->应用添加依赖、配置文件->编写代码,操作实例->验证效果

·云数据库MongoDB数据迁移:

​ ·云服务器CVM自建实例迁移

​ ·外网实例迁移

·云数据库MongoDB使用

​ ·提供多种语言连接方式

​ ·随时调整实例配置,升级

​ ·支持创建一个或多个只读实例

6.云对象存储COS

·文件存储CFS问题:

​ ·直接挂载主机适合文件共享,但是没有直观的web管理界面

​ ·存储能共享但是文件权限很难控制

​ ·只是作为存储,无法直接通过HTTP方式访问

​ ·无CND节点

·COS简介

​ ·对象存储是腾讯云提供的一种存储海量文件的分布式存储服务,用户可通过网络随时存储和查看数据

·COS存储级别:

​ ·标准存储(默认)

​ ·低频存储

​ ·归档存储

·对比:

腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第4张图片

·控制台使用步骤

注册登录->创建存储桶->上传对象->下载对象->删除对象->删除存储桶

·操作COS对象存储的工具

腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第5张图片
·API
腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第6张图片
·Service接口

接口 说明
GET Service 获取存储桶列表

·Bucket接口
腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第7张图片
·Object接口:
腾讯TCA一些笔记,只敲了前几章,以官方文档和教学为主_第8张图片

·SDK操作对象存储

·提供丰富多样的SDK

·JAVA SDK访问步骤

添加依赖->初始化密钥信息->初始化COSClient->上传文件->下载文件->关闭客户端


云原生应用设计与开发

一、云原生简介

1.云原生的演进过程:

·系统资源

​ 操作系统->虚拟化->云计算->容器->k8s

·应用架构

​ 单体架构->SOA->微服务架构

·生命周期管理

​ 瀑布开发->CI(持续集成)\CD(持续部署)->CI\CD\CO(持续运营)

2.云原生计算基金会CNCF

·隶属于linux

·诞生与2015年7月

3.什么是云原生

·云原生是一种文化,更是一种潮流,是云计算的一个必然导向

·总结为“适合云的应用”和“好用的云架构”

二、云原生架构

1.Spring Cloud

·核心是服务的注册与发现

·服务提供者:服务的被调用方

·服务消费者:服务的调用方

·只能使用Java开发

2.Service Mesh

·支持多种语言开发

·架构分层:

​ ·数据面

​ ·控制面

.Sidecar模式

​ ·是一种将应用功能从本身剥离出来作为单独进程的方式

​ ·该模式允许我们向应用无侵入添加多种功能,避免了为满足第三方组件需求而额外添加配置代码

·适合场景

​ ·集群中存在多种语言互通

​ ·服务器底层基于非springboot框架进行开发

​ ·遗留系统,不希望因为微服务化而做更多的侵入式变更

​ ·服务运维人员希望服务框架的升级无需业务联动升级

·容器化

​ ·kubernetes是一个开源的管理容器的应用

·DevOps:

​ ·是一组过程、方法与系统的统称

·持续交付

3.云原生机构的技术特征

·采用轻量级的容器

·设计为松耦合的微服务

·通过API进行交互协作

·使用最佳的语言和框架开发

·通过DevOps流程进行管理


TSF介绍与容器化部署

一、腾讯微服务平台TSF

1.功能:

·微服务架构

·DevOps

·服务化能力支持

·数据化运营

·服务治理

2.整体架构

·负载均衡

·API网关

·TSF

·消息队列

·虚拟机

·容器

二、容器介绍

1.云容器TKE介绍

·基于腾讯云容器微服务

·TKE VS kubernetes

特性 TKE kubernetes
管理 简化集群管理 管理复杂
扩展 灵活集群托管,集成负载均衡 可用性可扩展性差
可靠性 资源高度隔离,服务高可用 租户设备内核模块隔离性等较差
效率 镜像快速部署,业务持续继承 网络、容器的创建效率无保证
成本 容器服务免费 人力成本、硬件成本高

·应用场景

​ ·微服务架构

​ ·持续继承与交付

​ ·弹性伸缩

2.Docker基本使用

·Docker命令

基本命令 意义
docker login 登录docker仓库
docker images 查看系统中的镜像
docker pull/ 从仓库拉去镜像
docker push/: 将自定义的镜像发布到仓库
docker built -t 使用当前目录下的Dockerfile构建镜像
docker run 使用镜像创建容器
docker image rm 删除指定的镜像
docker container Is 列出所有运行的容器
docker start 启动容器
docker stop 停止容器
docker restart 重启容器
docker rm 删除容器

3.Dockerfile基本使用

·使用流程

制作镜像->推送镜像->拉取镜像

·命令:

命令 意义
FROM 确定基础镜像
RUN 运行镜像
COPY 复制镜像
CMD 运行容器

4.利用云容器部署TSF

·步骤

创建容器集群->导入云主机->创建容器应用->创建部署组->初始化镜像仓库->创建镜像和推送镜像到仓库->部署应用

三、TSF容器管理

1.配置管理:

·特点

​ ·支持分布化管理(仅SpringCloud)

​ ·配置异构管理系统

​ ·支持文件在控制台上编写YAML格式的配置

·配置管理分类

​ ·应用配置(优先级最高)

​ ·全局配置

​ ·本地配置(优先级最低)

2.应用配置

·步骤

添加依赖->引用配置->TSF应用配置内容填写->发布配置

·应用配置的功能

​ ·创建配置项:一个配置项管理多个版本的配置

​ ·生成新版本:基于历史版本生成新版本

​ ·发布配置:支持发布配置到部署组

​ ·回滚:回滚到上一个版本的配置

3.全局配置概述

·全局配置

​ ·用于动态更新应用代码中的配置

​ ·全局配置可以保证配置内容在某个集群或者命名空间中全局生效

·全局配置包括管理配置和发布配置两部分

​ ·管理配置包括创建配置、生成新版本配置和删除配置

​ ·配置可以发布到命名空间的所有应用

四、TSF服务治理

1.服务治理:

·对用户运行业务的统一管理,包含对线上流量的管控、服务监控与告警、权限的限制、抑制突发情况

·TSF提供了一个统一的入口对线上服务进行管理

·现阶段TSF服务治理包含:

​ ·服务注册与发现

​ ·服务鉴权

​ ·服务路由

​ ·服务限流

·常见服务治理能力实现的功能

​ ·设置服务访问权限控制:白名单黑名单

​ ·设置某些带有标签的请求访问控制

​ ·设置流量最大限制、保护核心服务

​ ·灰度发布、蓝绿服务

​ ·部分用户内测功能

​ ·就近IP访问

​ ·容灾与熔断

​ ·服务API的管理

2.服务发现

·创建服务的服务名和注册中心的服务一致时会认为时一个服务

·服务发现步骤

​ ·Mesh:无需改造代码

​ ·Spring Cloud:pom.xml中添加依赖配置->应用启动类中添加服务发现和注解->修改应用配置->服务发现功能验证

3.服务鉴权

·为了解决微服务间相互访问的权限的解决方案

·鉴权规则:

​ ·基于黑名单的鉴权规则:匹配任意一条规则时拒绝调用,否则允许调用

​ ·基于白名单的鉴权规则:匹配任意一条规则时允许调用,否则拒绝调用

·鉴权规则支持标签形式配置:系统标签,自定义标签

·步骤:

应用配置依赖-配置鉴权规则-切换鉴权规则(黑白相互切换或切换到不启用)

4.服务限流

·保护数据或者节点,防止瞬时流量过大导致数据崩溃造成服务不可用

·限流粒度:

​ ·全局限流:超过QPS限流

​ ·标签限流

·服务限流步骤

​ ·Mesh:无需改造代码,标签限流设置标签

​ ·Spring Cloud:pom.xml中添加依赖配置->应用启动类中添加服务发现和注解->新建限流规则并启动->限流功能验证

·限流效果:

​ ·请求达到限流阈值,任何到达的请求都会被限流模块处理

​ ·如何该服务的配额已经消耗完,会对请求返回HTTP429,否则会正常放行

5.服务路由

·通过特定要求的属性来选择服务的提供者,对服务间流量分配起到掌控的作用

·常见使用场景:

​ ·灰度发布

​ ·部分账号内测

​ ·按照IP流量分配

·配置来源:

​ ·按照权重方式配置路由规则

​ ·按照系统自带标签的方式配置路由规则

​ ·按照自定义标签的方式配置路由规则


·常见服务治理能力实现的功能

​ ·设置服务访问权限控制:白名单黑名单

​ ·设置某些带有标签的请求访问控制

​ ·设置流量最大限制、保护核心服务

​ ·灰度发布、蓝绿服务

​ ·部分用户内测功能

​ ·就近IP访问

​ ·容灾与熔断

​ ·服务API的管理

2.服务发现

·创建服务的服务名和注册中心的服务一致时会认为时一个服务

·服务发现步骤

​ ·Mesh:无需改造代码

​ ·Spring Cloud:pom.xml中添加依赖配置->应用启动类中添加服务发现和注解->修改应用配置->服务发现功能验证

3.服务鉴权

·为了解决微服务间相互访问的权限的解决方案

·鉴权规则:

​ ·基于黑名单的鉴权规则:匹配任意一条规则时拒绝调用,否则允许调用

​ ·基于白名单的鉴权规则:匹配任意一条规则时允许调用,否则拒绝调用

·鉴权规则支持标签形式配置:系统标签,自定义标签

·步骤:

应用配置依赖-配置鉴权规则-切换鉴权规则(黑白相互切换或切换到不启用)

4.服务限流

·保护数据或者节点,防止瞬时流量过大导致数据崩溃造成服务不可用

·限流粒度:

​ ·全局限流:超过QPS限流

​ ·标签限流

·服务限流步骤

​ ·Mesh:无需改造代码,标签限流设置标签

​ ·Spring Cloud:pom.xml中添加依赖配置->应用启动类中添加服务发现和注解->新建限流规则并启动->限流功能验证

·限流效果:

​ ·请求达到限流阈值,任何到达的请求都会被限流模块处理

​ ·如何该服务的配额已经消耗完,会对请求返回HTTP429,否则会正常放行

5.服务路由

·通过特定要求的属性来选择服务的提供者,对服务间流量分配起到掌控的作用

·常见使用场景:

​ ·灰度发布

​ ·部分账号内测

​ ·按照IP流量分配

·配置来源:

​ ·按照权重方式配置路由规则

​ ·按照系统自带标签的方式配置路由规则

​ ·按照自定义标签的方式配置路由规则


你可能感兴趣的:(考研考证,微信,小程序,html5)