当前位置: 首页 > news >正文

德州哪家网站优化公司专业做网站和维护网站

德州哪家网站优化公司专业,做网站和维护网站,网站在线做照片,电商网站如何优化Mesh应用的故障注入 故障注入前世今生Envoy设置故障注入-延迟类型设置故障注入-延迟类型并带有自定义状态码总结 故障注入前世今生 故障注入是一种系统测试方法,通过引入故障来找到系统的bug,验证系统的稳健性。istio支持延迟故障注入和异常故障注入。 …

Mesh应用的故障注入

  • 故障注入前世今生
  • Envoy
  • 设置故障注入-延迟类型
  • 设置故障注入-延迟类型并带有自定义状态码
  • 总结

故障注入前世今生

故障注入是一种系统测试方法,通过引入故障来找到系统的bug,验证系统的稳健性。istio支持延迟故障注入和异常故障注入。

在服务网格和API网关等基础设施中,故障注入通常可以通过配置来实现,在Istio和Envoy中,可以使用EnvoyFilter或VirtualService资源来配置故障注入规则。通过这种方式,可以在不修改应用代码的情况下实现故障注入,便于测试和验证系统的健壮性。

Envoy

Envoy作为数据面代理,连接和流量处理的核心是网络过滤器(Network Filter),该过滤器一旦融合进过滤器链(Filter Chain),就可以实现访问控制、数据或协议转换、数据增强、审计等高级功能。通过添加新的过滤器,可以用来扩展Envoy的已有功能集。
在istio中,可以直接设置故障注入配置信息:

kubectl get vs xxx-svr -o yaml -n ns
spec:host:- xxx-svrhttp:- fault:abort:httpstatus: 500percent: 50delay:fixedDelay: 1spercent: 100

envoy官方对于故障注入的建议:https://cloudnative.to/envoy/configuration/http/http_filters/fault_filter.html
腾讯云官对于sidecar过滤器的描述和使用建议:https://cloud.tencent.com/document/product/649/43495

设置故障注入-延迟类型

鉴于envoy的特点,我们可以用它来实现故障注入,新建一个sidecar过滤器,填写以下内容:
过滤器名称:任意合法名称
作用位置:作为服务端
脚本内容:

function envoy_on_request(request_handle)--自定义部分,定义延迟概率和延迟时间的请求头local delay_percent = tonumber(request_handle:headers():get("x-delay-percent"))local delay_duration = tonumber(request_handle:headers():get("x-delay-duration"))if delay_percent and delay_duration thenlocal random_value = math.random(100)if random_value < delay_percent thenrequest_handle:logInfo("Injecting delay for " .. delay_duration .. " ms")os.execute("sleep " .. tostring(delay_duration / 1000))endend
end
function envoy_on_response(response_handle)--自定义部分
end

随后,登录到其他mesh应用(user)所在的节点上,执行命令:

持续请求,该脚本从HTTP请求头中读取x-delay-percent和x-delay-duration字段,然后根据这些字段的值决定是否注入延迟。如果随机数小于x-delay-percent,则注入延迟(单位:毫秒)
while true;do curl shop:80/api/v6/shop/items -H "x-delay-percent: 50" -H "x-delay-duration: 1000";sleep 1;done

然后我们就可以观察到,请求成功,进入调用链页面可以观察到,大概有50%的请求,被延迟了1000ms

在这里插入图片描述
查看envoy日志,可以查看到"Injecting delay for 1000ms "字样
在这里插入图片描述

设置故障注入-延迟类型并带有自定义状态码

当延迟类型的异常发生时,返回自定义状态码567:

function envoy_on_request(request_handle)--自定义部分
end
function envoy_on_response(response_handle)local delay_percent = 50 --50% 异常local delay_duration = 1000 --延迟1000mslocal random_value = math.random(100)if random_value < delay_percent thenresponse_handle:logInfo("Injecting delay for " .. delay_duration .. " ms")os.execute("sleep " .. tostring(delay_duration / 1000))response_handle:headers():replace(":status", "567")end
end

在这里插入图片描述

总结

和阿里给的一模一样嘛!excited!
在这里插入图片描述

http://www.yayakq.cn/news/343750/

相关文章:

  • 可以免费建手机网站简单的企业网站制作
  • 全国建设网站网站建设团队名称
  • 专业做民宿的网站wordpress新建的页面如何加xml
  • 如何做文化传播公司网站中核集团2023校园招聘信息
  • 湖南企业网站建设ssl 加密网站
  • 站长工具网站测速淘宝特价版
  • 北京美的网站西安企业自助建站系统
  • 宁德商城网站开发设计找一个免费的网站
  • 建设一个平台网站需要多少钱mip 网站
  • 学校网站建设网站网站建设费用的会计分录
  • 六盘水网站建设微信小程序加盟招商
  • 电子商务网站建设期末试题08答案免费做网站模板在哪里做
  • 上海市普陀区建设规划局网站wordpress和微博相册
  • 基于jsp网站开发wordpress侧边栏加载过慢
  • 做网商要创建网站吗在百度怎么建立自己的网站
  • 做logo的网站网站外包怎么做
  • 怎样成立网站华硕固件做网站6
  • 做海报创意网站先网站开发后软件开发好
  • 做网站设计软件网站建设和网站维护是什么
  • 网站底部链接怎么做永久3e38cos免费
  • 动态设计参考网站美妆网站源码asp
  • 公司 网站源码做淘宝客为什么要做网站
  • 怎么知道网站是否被百度收录wordpress怎么保存图片
  • 电商网站开发制作深圳高端网站建设招聘
  • 服务器网站跳转怎么做杭州优质网站建设
  • 哪个做网站公司phpcms建设网站
  • 企业建站系统信息网站自主制作平台
  • tklink的登录做网站潍坊市住房和城乡建设厅网站
  • 南宁推广软件湖南seo优化按天付费
  • 如何拥有一个自己的网站wordpress renderview