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

黔南布依族苗族自治州网站建设_网站建设公司_Django_seo优化

无锡专业做网站公司,阳江房产网,ps怎么做网站首页,互联网行业前景分析转载自 热点参数限流 Overview 何为热点#xff1f;热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据#xff0c;并对其访问进行限制。比如#xff1a; 商品 ID 为参数#xff0c;统计一段时间内最常购买的商品 ID 并进行限制用户 …转载自  热点参数限流 Overview 何为热点热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据并对其访问进行限制。比如 商品 ID 为参数统计一段时间内最常购买的商品 ID 并进行限制用户 ID 为参数针对一段时间内频繁访问的用户 ID 进行限制 热点参数限流会统计传入参数中的热点参数并根据配置的限流阈值与模式对包含热点参数的资源调用进行限流。热点参数限流可以看做是一种特殊的流量控制仅对包含热点参数的资源调用生效。 Sentinel 利用 LRU 策略统计最近最常访问的热点参数结合令牌桶算法来进行参数级别的流控。热点参数限流支持集群模式。 基本使用 要使用热点参数限流功能需要引入以下依赖 dependencygroupIdcom.alibaba.csp/groupIdartifactIdsentinel-parameter-flow-control/artifactIdversionx.y.z/version /dependency 然后为对应的资源配置热点参数限流规则并在 entry 的时候传入相应的参数即可使热点参数限流生效。 注若自行扩展并注册了自己实现的 SlotChainBuilder并希望使用热点参数限流功能则可以在 chain 里面合适的地方插入 ParamFlowSlot。 那么如何传入对应的参数以便 Sentinel 统计呢我们可以通过 SphU 类里面几个 entry 重载方法来传入 public static Entry entry(String name, EntryType type, int count, Object... args) throws BlockExceptionpublic static Entry entry(Method method, EntryType type, int count, Object... args) throws BlockException 其中最后的一串 args 就是要传入的参数有多个就按照次序依次传入。比如要传入两个参数 paramA 和 paramB则可以 // paramA in index 0, paramB in index 1. // 若需要配置例外项或者使用集群维度流控则传入的参数只支持基本类型。 SphU.entry(resourceName, EntryType.IN, 1, paramA, paramB); 注意若 entry 的时候传入了热点参数那么 exit 的时候也一定要带上对应的参数exit(count, args)否则可能会有统计错误。正确的示例 Entry entry null; try {entry SphU.entry(resourceName, EntryType.IN, 1, paramA, paramB);// Your logic here. } catch (BlockException ex) {// Handle request rejection. } finally {if (entry ! null) {entry.exit(1, paramA, paramB);} } 对于 SentinelResource 注解方式定义的资源若注解作用的方法上有参数Sentinel 会将它们作为参数传入 SphU.entry(res, args)。比如以下的方法里面 uid 和 type 会分别作为第一个和第二个参数传入 Sentinel API从而可以用于热点规则判断 SentinelResource(myMethod) public Result doSomething(String uid, int type) {// some logic here... } 热点参数规则 热点参数规则ParamFlowRule类似于流量控制规则FlowRule 属性说明默认值resource资源名必填 count限流阈值必填 grade限流模式QPS 模式durationInSec统计窗口时间长度单位为秒1.6.0 版本开始支持1scontrolBehavior流控效果支持快速失败和匀速排队模式1.6.0 版本开始支持快速失败maxQueueingTimeMs最大排队等待时长仅在匀速排队模式生效1.6.0 版本开始支持0msparamIdx热点参数的索引必填对应 SphU.entry(xxx, args) 中的参数索引位置 paramFlowItemList参数例外项可以针对指定的参数值单独设置限流阈值不受前面 count 阈值的限制。仅支持基本类型和字符串类型 clusterMode是否是集群参数流控规则falseclusterConfig集群流控相关配置  我们可以通过 ParamFlowRuleManager 的 loadRules 方法更新热点参数规则下面是一个示例 ParamFlowRule rule new ParamFlowRule(resourceName).setParamIdx(0).setCount(5); // 针对 int 类型的参数 PARAM_B单独设置限流 QPS 阈值为 10而不是全局的阈值 5. ParamFlowItem item new ParamFlowItem().setObject(String.valueOf(PARAM_B)).setClassType(int.class.getName()).setCount(10); rule.setParamFlowItemList(Collections.singletonList(item));ParamFlowRuleManager.loadRules(Collections.singletonList(rule)); 示例 示例可参见 sentinel-demo-parameter-flow-control。
http://www.ihoyoo.com/news/62050.html

相关文章:

  • 局域网视频网站建设点播系统网站如何在百度上搜索到
  • 龙岗坪地网站建设装修公司名字大全
  • 南城网站建设公司报价中国建筑服务信息网
  • 如何优化网站性能重庆seo网站推广工具
  • 做设计找素材的+网站有哪些建设商城类的网站要多少钱
  • 献县网站建设做网站 绍兴
  • 推荐邯郸网站建设西安网站制作工程师
  • 品牌网站建设 1蝌蚪小视觉设计案例
  • 做设计有哪些免费网站wordpress广告延时加载
  • 网站定制开发多久时间住建局受理哪些投诉
  • 批量建站怎么赚钱搜索关键词排名推广
  • 龙岩网站建设套餐报价自己做网站 什么软件
  • 网站被黑怎么恢复wordpress导航栏特效插件
  • 上海网站制作公司美工做网站怎么收费
  • 关于重新建设网站的申请表公众号5000粉丝月收入
  • 移动网站有哪些做动效网站
  • 网站开发新技术做网站ftp
  • 二手交易网站建设目标wordpress ydg theme
  • 金融电子商务网站建设同城生活服务app
  • 网站推广明细报价表网站是用php还是asp 怎么区别
  • 做动态头像的网站餐饮公司做网站的好处
  • 药品和医疗器械网站icp备案前置审批流程网站美工如何做
  • 如何查询网站的备案号广州市花都区建设局网站
  • 厦门的网站建设公司网站设计师大学学什么专业
  • 用vue框架做的网站专业手机网站建设哪家好
  • -邵阳网络公司-邵阳网站建设|邵阳网站制作宜宾三江新区核酸检测
  • 电视台网站开发网站买卖交易平台
  • 罗湖做网站哪家好简单的wordpress模板下载
  • 东莞哪家网站建设比较好西宁网站建设学校
  • 石家庄网站推广专家免费企业网站源码下载