美文网首页
Marathon-LB实现服务限流

Marathon-LB实现服务限流

作者: 761eebae5903 | 来源:发表于2017-08-07 14:21 被阅读0次

1.HAProxy配置

参考官网Haproxy的配置手册HAProxy Configuration Manual, 我们可以利用http_req_rate这个配置项实现限流,如下图所示:

2.Marathon-LB配置

Marathon-LB(MLB)是一个根据Marathon应用状态自动调整和配置HAProxy的工具。Marathon-LB既可以用作服务代理,也可以用作负载均衡和服务发现工具。
参考github MLB的Templates信息,我们可以利用HAPROXY_0_BACKEND_HTTP_OPTIONS 这个模板修改服务backend部分的信息,如下图所示:

3.Marathon-LB实现服务限流

利用marathon发布服务blackname,marathon.json中配置label如下:

"HAPROXY_0_BACKEND_HTTP_OPTIONS": " stick-table type ip  size 200k  expire 60s store conn_rate(30s) , bytes_out_rate(30s) \n tcp-request content  track-sc2 src  \n acl conn_rate_abuse  sc2_conn_rate gt 5  \n acl data_rate_abuse  sc2_bytes_out_rate  gt 20000000 \n http-request deny  if conn_rate_abuse \n http-request deny  if data_rate_abuse \n"

MLB会动态监控marathon的事件流,动态生成Haproxy的配置文件。经过上面的配置,在浏览器30S之内访问次数大于5 次会断开TCP连接。如下图所示:

相关文章

  • Marathon-LB实现服务限流

    1.HAProxy配置 参考官网Haproxy的配置手册HAProxy Configuration Manual,...

  • marathon-lb配置及负载nginx

    marathon-lb配置 marathon-lb get images Marathon-lb既是一个服务发现工...

  • marathon-lb服务发现与负载均衡

    案例:用marathon-lb 绑定tomcat端口,并自动服务发现与负载均衡。 部署marathon-lb 在m...

  • 谈一谈限流算法的几种实现

    保障服务稳定的三大利器:熔断降级、服务限流和故障模拟。今天和大家谈谈限流算法的几种实现方式,本文所说的限流并非是N...

  • 如何使用Sentinel实现服务熔断和降级,看完你就懂了

    使用 Sentinel 实现限流 , 参见springcloud-demo , 限流是给服务生产者的保护措施 添加...

  • 基于计数器的服务接口限流实例

    计数器限流是服务接口限流策略中最为基本和简单的方式。本实例将实现不同接口设置不同的限流方案。 首先我们需要需要定义...

  • 服务限流

    保障服务稳定的三大利器:熔断降级、服务限流和故障模拟。限流可是Nginx接入层面的限流,也可以是服务层面的限流。 ...

  • Java分布式天气系统(1)

    系统构想 该系统需要实现服务注册与发现功能,统一的配置中心,使用网关进行服务调用、限流,实现根据api获取天气信息...

  • 限流算法

    前言 保障服务稳定的三大利器:熔断降级、服务限流和故障模拟。限流包括Nginx层面的限流以及业务代码逻辑上的限流。...

  • 分布式限流之Redis+Lua实现

    分布式限流最关键的是要将限流服务做成原子化,而解决方案可以使用redis+lua或者nginx+lua技术进行实现...

网友评论

      本文标题:Marathon-LB实现服务限流

      本文链接:https://www.haomeiwen.com/subject/woxalxtx.html