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

活动网站怎么建设女装网站欣赏

活动网站怎么建设,女装网站欣赏,wordpress签到功能,这几年做哪些网站能致富访问限流对于一个网关来说是个比较重要的功能#xff0c;它可以根据不同服务的处理能力来控制相关的访问量#xff0c;从而保障服务更可靠地运行。但是URL控制的路径比较多还加上可动态添加删除#xff0c;大量的访问匹配会很容易引起性能上的问题#xff0c;接下来讲解一下…         访问限流对于一个网关来说是个比较重要的功能它可以根据不同服务的处理能力来控制相关的访问量从而保障服务更可靠地运行。但是URL控制的路径比较多还加上可动态添加删除大量的访问匹配会很容易引起性能上的问题接下来讲解一下Beetlex的网关是如何实现并得到一个更好的处理性能。        对于一个API服务来说它的接口非常多当根据不同接口定义访问控制的时候每次请求都会匹配一下URL然后进行访问控制当访问量比较大的时候这个字符匹配损耗是非常大的解决这种问题可以对URL策略对象进行一个缓存但缓存有一个延时性的问题毕竟策略可以随意添加或删除这时候当前URL的处理策略是否有效就存在一些延时问题了。接下介绍一下Beetlex的网关设计是怎样解决性能问题又能处理缓存的延时性问题。        Beetlex在设计的时候引入了策略代理和版本问题当网关接收到请求会拿到当前URL策略代理的缓存然后再对比一下当前代理的版本和配置策略的版本是否一致当一致的情况下直接用策略代理计数并判断处理否则重匹配策略生成代理写入到缓存中。看上去有些复杂实际代码非常简单private void OnRefreshTable() {lock (this){var items (from a in mLimitTable.Valuesorderby a.Url.Length descendingselect a).ToArray();if (items null){items new UrlLimitRecord[0];}mUrlTables items;System.Threading.Interlocked.Increment(ref mVersion);} }public void AddUrl(string url, int maxrps) {mLimitTable[url] new UrlLimitRecord { Url url, MaxRPS maxrps };OnRefreshTable(); }public void RemoveUrl(string url) {mLimitTable.TryRemove(url, out UrlLimitRecord result);OnRefreshTable(); }在策略容器中添加一个版本号当有修改的情况重新刷新匹配表和修改版本号。接下来在获取策略的时候做一下判断即可:internal UrlLimitAgent Match(string url) {if (mCachedLimitTable.TryGetValue(url, out UrlLimitAgent result)){if (result.Version Version)return result;}var items mUrlTables;result new UrlLimitAgent();foreach (var item in items){if (url.IndexOf(item.Url, StringComparison.CurrentCultureIgnoreCase) 0){result.RpsLimit new RpsLimit(item.MaxRPS);result.Config item;}}result.Version System.Threading.Interlocked.Add(ref mVersion, 0);mCachedLimitTable[url] result;return result; }从缓存表中获取代理当获取成功后判断一下版本号如果一致就返回否则重新匹配并更新到缓存中。        当看完以上代码是不是感觉非常简单Beetlex网关的限流策略基本用这种方式进行设计和使用以下是Beetlex网关的限流功能if (!CheckIPTable(request, response))return; if (!CheckDomains(request)) {if (string.IsNullOrEmpty(Options.InvalidDomainUrl)){response.InnerError(509, Invalid domain name!);}else{Move302Result result new Move302Result(Options.InvalidDomainUrl);response.Result(result);}return; } HttpToken token (HttpToken)request.Session.Tag; if (token.HttpRpsLimit.Check(this.Options.SessionMaxRps)) {response.InnerError(509, session max rps limit!);return; } if (!mIPLimit.ValidateRPS(request)) {response.InnerError(509, ${request.RemoteIPAddress} max rps limit!);return; } if (!CheckUrlLimit(request, response))return; if (!CheckDomainsLimit(request, response))return; if (RpsLimitHandlers.Count 0)foreach (var handler in RpsLimitHandlers.Values){if (handler.Check(request, response)){response.InnerError(509, ${handler.Name} max rps limit!);return;}}if (AllRpsLimit.Check(this.Options.MaxRps)) {response.InnerError(509, server max rps limit!);return; }BeetleX开源跨平台通讯框架(支持TLS)提供高性能服务和大数据处理解决方案https://beetlex-io.com
http://www.zqtcl.cn/news/912212/

相关文章:

  • 网站开发 英文网站策划建设阶段的推广
  • 建立网站一般多少钱wordpress评论跳过验证
  • 南京每月做社保明细在哪个网站查看设计作品的网站软件
  • html怎么做网站如何在腾讯云上网站建设
  • 网站建设怎么链接表格手机做外贸有什么好的网站
  • 深圳开发网站建设哪家好外贸网络营销培训
  • 广州智迅网络做网站免费下载ps素材网站
  • 什么网站时候做伪静态开发软件定制
  • 找人做网站 多少钱西宁市公司网站建设
  • 网页设计 教程网站找权重高的网站方法
  • 网站建设本地还是外地重庆seo排名方法
  • 那个网站做网编好昨晚兰州发生了什么事
  • 温州建设局网站首页哪里可以学做资料员的网站
  • 网站怎样在360做优化wordpress文章图片在线裁剪
  • 彭州建设网站建设网站哪间公司比较好
  • qq空间网站根目录慧聪网首页
  • 制作小程序和网站的公司杭州品牌设计公司
  • 显示网站翻页代码wordpress 金融 模板下载
  • 用双语网站做seo会不会phpmysql网站
  • 长沙专业网站建设公司优惠券怎么做自己的网站
  • 做网站如何宣传怎么弄公众号
  • seo网站策划书网站建设资金投入
  • 做网站东莞东莞建网站wordpress 多文件上传
  • 公司注册流程聊城网站优化案例
  • 化妆品网站建设实施方案杭州seo代理公司
  • 网站小图片素材高质量外链
  • 福州个人建站模板有没有一些有试卷做的网站
  • 教你如何建设网站阿里去旺道seo优化
  • 想做一个个人网站怎么做网站组成部分
  • 旅游门户网站模板下载全国最新产品代理商