本篇内容主要讲解“Rainbond对微服务进行请求速率限制的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Rainbond对微服务进行请求速率限制的方法”吧!Rainbond 默认支持基于 envoy 的全局速率限制。在 Rainbond 默认提供的综合网络治理插件中呈现。本文我们将一个用例呈现 Rainbond 中全局速率限制的使用方式。Rainbond平台已部署完成。在Rainbond中部署可访问的 Demo 业务。为此组件开通综合网络治理插件。参考视频https://player.bilibili.com/player.html?aid=540728010Rainbond 速率限制设置参考视频1.部署全局限制服务需要使用的 Redis 组件,使用镜像redis:alpine创建组件,组件创建后在端口设置中将 6379 端口别名修改为REDIS,开启对内服务权限。2.部署全局限制服务,使用镜像的方式部署全局限制服务。使用以下 DockerRun 命令创建组件,组件可部署到业务的同一个应用中。添加后使其依赖上步安装的 REDIS 组件。添加成功后切换到组件端口设置页面,将 8081 端口对内服务打开并设置端口别名为RATE_LIMIT_SERVER默认使用的全局限制服务是 envoy 的默认实现,你可以根据 envoy 的速率限制服务 API 规范进行自定义实现。3.添加速率限制配置文件进入全局限制服务组件的环境管理中,添加配置文件,文件路径为 /data/ratelimit/config/config.yaml添加完配置文件后重启组件。该配置的含义是通过请求来源 IP 进行速率限制,IP为 50.0.0.5 限制访问,其他 IP 地址限制每秒请求 10 次4.业务组件依赖限制服务组件并更新插件配置编辑拓扑图使业务组件依赖刚刚部署的速率限制服务组件,然后进入业务组件插件管理,点击已开通的综合治理插件的查看配置入口。在配置表单中做如下配置:配置OPEN_LIMIT为yes配置LIMIT_DOMAIN为limit.common,该值与上面配置文件中的配置 domain 形成对应。配置完成后更新插件配置即可。5.验证速率限制是否生效我们可以使用ab命令进行压力测试结果会显示如下:Concurrency Level: 20
Time taken for tests: 6.132 seconds
Complete requests: 1000
Failed requests: 794
(Connect: 0, Receive: 0, Length: 794, Exceptions: 0)
Non-2xx responses: 794可见 1000 次请求有 794 次被限制,被速率限制驳回的请求访问码为429是否可以自定义开发速率限制服务当然可以,本文免费云主机域名采用的服务实现是envoy ratelimit,你可以基于API 规范自主实现。是否支持更多速率限制策略速率限制策略还可以支持基于请求头来进行限制,但目前仅支持基于来源 IP 地址。到此,相信大家对“Rainbond对微服务进行请求速率限制的方法”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
这篇文章主要介绍“怎么使用OpenCV+Qt实现图像处理操作工具”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用OpenCV+Qt实现图像处理操作工具”文章能帮助大家解决问题。Qt界面实现 雪花屏 高斯模糊 中值…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。