分布式集群下的RPC限流方案

本文探讨了在大数据时代,多集群HDFS环境下如何实施RPC请求限流,以防止异常用户请求影响系统性能。核心限流方法包括按用户、操作类型或两者结合进行限制,并详细介绍了RBF架构中Router层的限流措施,如请求优先级划分和重要用户请求处理策略,旨在实现均衡、高效的RPC服务。
摘要由CSDN通过智能技术生成

前言


如今在大数据时代,面对如今规模数据体量快速增长的一个阶段,HDFS单集群模式已经无法支撑更加平稳高效的数据服务能力。多集群联合模式逐渐成为一种新的架构尝试,笔者所在公司亦是如此。我们内部目前采用了社区的RBF(Router-based Federation )方案来做统一的数据服务。最近我们在尝试解决一个棘手的问题:多用户的RPC请求隔离问题。这个问题其实在原始HDFS单集群模式本身也是存在的,但是在多集群模式下这个问题只会变得更为严重。多集群模式下,更多的用户数据被写入到集群,而这也意味着更多的用户请求将会被处理。那么这中间是可能出现一些异常的用户发送大量的请求拖慢了NameNode,导致其他正常的用户的请求处理被影响到。因此在这里,笔者想聊聊在多集群模式下如何做这种RPC请求的限流管控。

RPC请求限流的核心本质


限流这个词我们在日常生活中其实也经常会听到,比如手机流量用得过多了,有可能会受到一定的网络限速。但是我们平常更多的限速说的只是限制速率,但是在分布式系统中限流的概念要比限速要更宽泛一点。用一句通俗的话来解释RPC的限流:对RPC请求流量的限制。

既然我们说的是对RPC请求流量的限制,我们从限制对象的角度出发来做限制,有下面3种类型的限制方法:

  • 从RPC请求的发起者做限制,就是按照用户做限制。
  • 对请求操作类型做限制,就是按照操作类型做限制。
  • 同时结合用户和操作类型做限制

按照用户做限制其实具体再细分又可以分成下面两种:

  • 限制bad user的异常请求行为
  • 保证重要用户的正常请求行为

而按照请求操

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值