【云原生】云原生服务网格流量控制思考

news2024/11/22 10:57:27

文章目录

  • 前言
  • 一、什么是流量控制?
  • 二、存在三种场景
  • 三、场景分析

前言

随着云原生技术的不断发展及应用,很多服务都已部署上云。

保障云上环境的稳定是重要的一环。

一个重要的影响稳定的场景就是突发大流量冲击。

面对该场景,较好的应对措施就是进行流量控制。

本文就流量控制进行简单分析。

一、什么是流量控制?

流量控制实际就是在上述中的某一路径进行拦截处理。
整体的流量路径如下图所示:
在这里插入图片描述

二、存在三种场景

  1. 从公网中访问。例如:某用户访问公司官网时,会先后经过DNS解析域名,选择APIG,ELB,访问某一服务网格的入口网关,最终抵达某个POD中。

  2. 不同服务网格间的访问。例如:存在服务A和服务B,分别位于不同服务网格中,服务A需要访问服务B,获取一些信息。此时,需要通过VPCEP,到达对方的入口网关,最终抵达某一POD中。

  3. 同一服务网格中的访问。例如:存在存在服务A和服务B,同属于一个服务网格中,当服务A访问服务B时,会先被si cecar流量劫持,最终抵挡业务容器中。

三、场景分析

  • 针对场景1,我们可以在APIG中配置重要API的访问次数限制。在官网中也针对该功能进行了简单介绍。

    在这里插入图片描述

  • 针对场景2,我们通过EnvoyFilter机制流量拦截。
    Envoy下的RateLimit提供了流控服务,支持Envoy APIs,项目地址:github.com/envoyproxy/…
    在这里插入图片描述
    在这里插入图片描述

    在v3 rls.proto文件中,定义了一个服务RateLimitService,我们可以在自己实现的流控服务中增加该grpc接口的具体实现,当流量被EnvoyFilter拦截时,就会转发到该服务中,进行流控判断,是否通过。

  • 针对场景3,我们可以在sidecar中补充流控规则。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/491245.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C#asp.net core学生信息管理系统

C#asp.net core学生信息管理系统 运行前附加数据库.mdf(或sql生成数据库) 主要技术: 基于asp.net core架构和sql server数据库 功能模块: 首页登陆,分别为管理员(学生管理 用户角色管理 授课信息管理&…

Linux_红帽8学习笔记分享_8(文件系统管理FS Management)

Linux_红帽8学习笔记分享_8(文件系统管理FS Management) 文章目录 Linux_红帽8学习笔记分享_8(文件系统管理FS Management)1.操作系统的两种启动模式: Legacy BIOS和UEFI1.1 Legacy BIOS1.2 UEFI 2.磁盘分区表的两种类型: MBR和GP…

【图像分割】【深度学习】SAM官方Pytorch代码-Mask decoder模块MaskDeco网络解析

【图像分割】【深度学习】SAM官方Pytorch代码-Mask decoder模块MaskDeco网络解析 Segment Anything:建立了迄今为止最大的分割数据集,在1100万张图像上有超过1亿个掩码,模型的设计和训练是灵活的,其重要的特点是Zero-shot(零样本迁…

ASP.NET动态Web开发技术第8章

第8章ASP.NET数据访问 一.预习笔记 1.SqlDataSource控件 SqlDataSource数据源控件支持连接SQL关系数据库,它使用SQL命令来检索和修改数据。通常将SqlDataSource数据源控件与数据绑定控件一起使用。 属性1:ID:当前数据源控件的唯一标识符 …

maven从入门到精通 第三章 Maven中形成web对Java工程的依赖

这里写自定义目录标题 一 war永远依赖于jar1. 在web工程的项目2中,加入项目1的路径依赖2 在web工程中,加入测试代码2.1 创建目录2.2 确认依赖junit2.3创建测试类2.4 运行测试2.5 打包2.6 查看依赖列表2.7 树形结构查看 二 测试依赖的范围1 compile的编译过程1.1 com…

如何安全免费地备份VMware虚拟机?

在没有备份的情况下在虚拟机上运行所有工作负载是有风险的。任何人为错误或自然灾害都可能对您的 VMware 虚拟机造成不可逆转的损坏,您无法预测下一秒您的虚拟机会发生什么。因此,您需要一个可靠的免费 vmware 备份解决方案来保护您的虚拟机数据免受安全…

Ubuntu 23.04 安装 Jupyter

Ubuntu 23.04 安装 Jupyter 1. 安装 Python 和 pip2. 升级 pip 至最新版本3. 安装 Jupyter4. 测试是否安装成功5. (可选)安装 Jupyter 内核和扩展6. (可选)配置 Jupyter,设置密码等 1. 安装 Python 和 pip sudo apt install -y python3 python3-pip2. 升级 pip 至最…

ASEMI代理ADP5054ACPZ-R7原装ADI车规级ADP5054ACPZ-R7

编辑:ll ASEMI代理ADP5054ACPZ-R7原装ADI车规级ADP5054ACPZ-R7 型号:ADP5054ACPZ-R7 品牌:ADI/亚德诺 封装:LFCSP-48 批号:2023 引脚数量:48 工作温度:-40C~125C 安装类型:表…

[2023-DAS x SU战队2023开局之战] crypto-sign1n

题目描述: from secret import r, t from Crypto.Util.number import *flag bxxx flag bytes_to_long(flag) e 0x10001def gen_keys():p getPrime(1024)q getPrime(1024)phi (p-1)*(q-1)d inverse(e,phi)n p*qprint(fn {n})WHATF (d ** 3 3) % phiprint…

Python模块篇:函数/类/变量和常量/注释/导入和使用

大家好,我是辣条哥!本期应邀写了一些Python模块相关内容~ Python模块是一种组织Python代码的方式,它将相关的代码放在一个文件中,以便于重用和维护。Python模块可以包含函数、类、变量和常量等,可以被其他Python程序导…

【计算机网络:自顶向下方法】(四)网络层 (IPV4 | IPV6 | 路由算法 )

【计算机网络:自顶向下方法 第7版 | 中科大 】 第4章 网络层 : 数据平面 4.1 导论 网络层服务 网络层功能: 转发: 将分组从路由器 的输入接口转发到合适 的输出接口 (局部)路由: 使用路由算法来 决定分组从发…

八、(了解即可)MyBatis懒加载(或者叫延迟加载)

文章目录 八、懒加载(了解即可)8.1 为啥需要懒加载?8.2 懒加载是什么?8.3 开启方式8.4 既然fetchType可以控制懒加载那么我仅仅配置fetchType不配置全局的可以吗?8.5 aggressiveLazyLoading是做什么么的?8.6 注意点8.7 案例验证懒加载准备工…

openEuler RISC-V 成功适配 LicheePi 4A 开发板,推动 RISC-V 生态发展

近期,RISC-V SIG 在 LicheePi 4A 开发板上成功实现了欧拉操作系统的适配。目前,最新版本的 openEuler RISC-V 23.03 V1 镜像已在 LicheePi 4A 开发板上可用,这一成果再次展现了 openEuler 在推动 RISC-V 生态发展过程中所取得的新突破。 下载…

JavaWeb综合案例1-2

1. 环境搭建 1.1 创建maven项目 补充相应的文件目录 1.2 修改pom文件及创建相应的基本框架 1.3 创建接口,实体类,映射到xml文件等等 创建xml映射文件 创建接口文件 创建实体类 导入对应的sqlsession工具类 导入对应的brand.html页面 2. 查询所有 2.1 编…

【看表情包学Linux】软硬链接

🤣 爆笑教程 👉 《看表情包学Linux》👈 猛戳订阅 🔥 💭 写在前面:上面我们学到的所有东西,全部都是在内存中的。是不是所有的文件都被打开了呢?不是所有的文件,都被打开…

论文投稿技巧

论文的投稿技巧包括会议论文的投稿技巧和期刊论文的投稿技巧。会议论文和期刊论文投稿技巧差别较大,读者需要根据自己投稿的是会议论文还是期刊论文使用不同的技巧。 为了提高会议论文的录用率,需要重点考虑的因素包含如下几方面。 1. 会议的主题 投稿…

【Linux】冯诺依曼体系和操作系统:

1.冯诺依曼体系结构: 1.1体系概述理清: 我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。 🔥我们将冯诺依曼体系结构分为输入设备、输出设备、存储器和CPU 上述部分…

一个混淆Tailwindcss类的工具

一个混淆Tailwindcss类的工具 一个混淆Tailwindcss类的工具 前言方案的寻找如何实现混淆如何使用 1. 安装这2个包2. 执行一下脚本3. 添加 prepare script 在你的 package.json 里4. 注册这个插件 webpackvite 效果预览 核心原理 SSR 场景思考和解决方案 错误与反馈 前言 ta…

Ant Design Pro---【03 UMI中使用MOCK】

Mock 数据 Mock 数据是前端开发过程中必不可少的一环,是分离前后端开发的关键链路。通过预先跟服务器端约定好的接口,模拟请求数据甚至逻辑,能够让前端开发独立自主,不会被服务端的开发所阻塞。 约定式 Mock 文件 Umi 约定 /mo…

SpringData-Redis配置及常用操作

文章目录 1.引入依赖2.yml配置文件3.设置Redis序列化4.使用教程5.操作String数据类型6.操作Hash数据类型7.操作Set数据类型8.操作List数据类型9.操作Sorted Set 数据类型 1.引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId…