首页 > 其他分享 >限流Throttling

限流Throttling

时间:2023-04-04 19:56:31浏览次数:30  
标签:throttling DEFAULT Throttling rest 认证 framework 限流

  • 限流全局配置
  • REST_FRAMEWORK = {
        # 循环认证,一旦认证成功则不会往下再去认证
        'DEFAULT_AUTHENTICATION_CLASSES': [
            'Restful_api.authentication.CustomerDefinedAuthentication',  # 自定义认证
            'rest_framework.authentication.SessionAuthentication',  # session认证
            'rest_framework.authentication.BasicAuthentication',  # 基础认证
    
        ],
        # 权限的全局配置
        # 'DEFAULT_PERMISSION_CLASSES': [
        #     'rest_framework.permissions.IsAuthenticated',
        # ],
    
        # 限流全局配置
        'DEFAULT_THROTTLE_CLASSES': [
            #     'rest_framework.throttling.UserRateThrottle',  # 已登录用户
            #     'rest_framework.throttling.AnonRateThrottle',  # 未登录用户
            rest_framework.throttling.ScopedRateThrottle  # 单个试图访问次数限流
        ],
        'DEFAULT_THROTTLE_RATES': {
            # 频率
            'user': '5/hour',
            'anon': '3/hour',
            "home2": "2/m",
        }
    }

     

  • 单个试图定制限流时需要加命名空间,使用内部限流时,加一个类即可
  • class Home2APIView(APIView):
        """限流组件"""
        # 内部限流
        # from rest_framework.throttling import UserRateThrottle,AnonRateThrottle
        # throttle_classes = [AnonRateThrottle]
        # 自定义命名空间(少用:用于定制单个视图)
        throttle_scope = "home2"
    
        def get(self, request):
            return Response(f"登录了视图HOME2{request.user}")

     

标签:throttling,DEFAULT,Throttling,rest,认证,framework,限流
From: https://www.cnblogs.com/Debain/p/17287125.html

相关文章

  • 提升集群吞吐量与稳定性的秘诀: Dubbo 自适应负载均衡与限流策略实现解析
    作者:刘泉禄整体介绍本文所说的“柔性服务”主要是指consumer端的负载均衡和provider端的限流两个功能。在之前的Dubbo版本中,负载均衡部分更多的考虑的是公平性原则,即consumer端尽可能平等的从provider中作出选择,在某些情况下表现并不够理想。而限流部分只提供了静态的限......
  • 提升集群吞吐量与稳定性的秘诀: Dubbo 自适应负载均衡与限流策略实现解析
    作者:刘泉禄整体介绍本文所说的“柔性服务”主要是指consumer端的负载均衡和provider端的限流两个功能。在之前的Dubbo版本中,负载均衡部分更多的考虑的是公平性原则,即consumer端尽可能平等的从provider中作出选择,在某些情况下表现并不够理想。而限流部分只提供了静态......
  • SpringBoot 服务接口限流-AOP令牌桶
    前言在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。限流可以认为服务降级的一种,限流通过限制请求的流量以达到保护系统的目的。一般来说,系统的吞吐量是可以计算出一个阈值的,为了保证系统的稳定运行,一旦达到这个阈值,就需要限制流量并采取一些措施以完成限制流量的目的......
  • Spring Cloud Alibaba系列(四)微服务网关Gateway及在网关上用sentinel进行限流熔断
    SpringCloudGateway是基于Netty,使用Reactor连接方式的,采用非阻塞方式,相比zuul支持更高的并发,且zuul已经停止维护,我们应该使用Gateway来构建微服务应用。一.使用nacos实......
  • Sentinel 限流、熔断降级
    一、什么是Sentinel?随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。S......
  • Sentinel基础使用-限流降级熔断
    转:Sentinel基础使用-限流降级熔断4、安装Sentinel官方文档:introduction(sentinelguard.io)。①下载官方下载:Releases·alibaba/Sentinel·GitHub。②命令......
  • ASP.NET Core Web API 接口限流
    一.前言ASP.NETCoreWebAPI接口限流、限制接口并发数量,我也不知道自己写的有没有问题,抛砖引玉、欢迎来喷!二.需求写了一个接口,参数可以传多个人员,也可以传单个人员,时间......
  • 微服务的熔断限流降级
    1、引言在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC)。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保......
  • .NET Core WebApi接口ip限流实践
    .NETCoreWebApi接口ip限流实践前言之前一直想实现接口限流,但一直没去实现,然后刚好看到一篇文章是基于AspNetCoreRateLimit组件的限流策略。这个组件不做多的介绍,想了......
  • Spring Cloud Alibaba系列(一)限流与防护组件Sentinel的简单使用
    Sentinel是SpringCloudAlibaba体系的安全防护组件,我们可以使用它以“非业务侵入”方式实现限流,熔断,服务降级需求。一.下载并启动Sentinel控制台从GitHub网址https......