实现滑动窗口限流算法

 下面我们通过php使用redis实现一个简单通用的滑动窗口限流算法解决问题 滑动窗口算法主要解决了传统计数限流算法的阶段突发性流量问题。具体实现创建redis对象并定义缓存键$redis = new \Redis(); $redis->connect("127.0.0.1"); $key = "aaaaa";定义每分钟最大请求数量$max_count = 320; $total_s = 60; $current_time = time();计算平均值用于限制每秒请求数量$avg_count = ceil($max_count / $total_s);限制每秒请求数量$range_count = $redis->zRangeByScore($key, $current_time, $current_time); if (count($range_count) > $avg_count) { exit('请求太过频繁,请稍后 -1'); }限制每分钟请求数量$redis->zRemRangeByScore($key, 0, $current_time - 59); $c...

PHP,Golang,前端,.Net,解决方案,其他 2023-03-17 PM 629次 0条

最新jetbrains全家桶及phpstorm激活方法支持全系列全版本支持更新永久有效

  继 IDE Eval Reset 失效后,今天我们分享一个最新的jetbrains全家桶及phpstorm激活方法,并且支持全系列,全版本可更新使用并且有效。 我们知道 jetbrains 家的产品用过的都知道非常好用,其中包括 phpstorm , goland , pycharm , webstorm , intellij idea 等等这些都是非常强大及好用的开发工具,但是奈何 jetbrains 系列的工具都是要收费激活的虽然淘宝上有便宜的 学生邮箱 和 破解版 但是这些非常 容易被封 ,博主已经入了两次淘宝的坑了。 博主之前分享的 phpstorm及jetbrains永久免费激活工具插件无限试用使用 奈何对2021年6月份之后的版本已经无效了,插件的开发者已经停止对激活插件的更新了所以说2021年6月份之后的版本就不能再使用了。最新jetbrains全家桶激活方法 原理是我们主要通过代码搜索其他授权服务器进行永久激活激活。方式一 通过censyshttps://search.censys.io/主要用到的代码services.http.response.head...

PHP,软件工具,Golang,前端,解决方案 2022-03-23 AM 18543次 0条

golang切片(slice)基本操作

 本篇主要以简洁明了的方式记录分享 go 语言 slice 切片的基本使用操作,以及 go 在使用 slice 切片过程中的注意事项等等。golang切片(slice)创建可以使用make创建一个长度(len)为16的切片可以使用make创建一个长度(len)为16,cap为32 的切片var s []int var s []int={2,3,4,5} // 可以使用make创建一个长度(len)为16的切片 s := make([]int ,16 ) // 可以使用make创建一个长度(len)为16,cap为32 的切片 s := make([]int ,16 ,32)用golang内置函数(append)追加切片(slice)s1 := []int{0,1,2,3,4,5,6,7} s2 :=append(s1,10) s3 := append(s2,11) s4 := append(s3,12,13,14)用golang内置函数(cope)拷贝切片(slice)s1 := []int s2 := []int{2,3,4} cope(s2,s1) fmt....

Golang 2021-11-26 AM 1087次 0条

golang使用packr包把静态资源文件打包进二进制应用内

 当开发 fdem-os 时候 以为想把应用做成直接的单一启用文件,所以说一直再思考怎么把 静态文件 html以及一些css,js一类的文件给打包到应用内而不用通过程序下载在去加载,这样及方便使用又保证了代码的安全性,最终发现 golang 可以完美实现需求的 packr 第三方包。 通过 packr 我们可以完美的将静态资源打包进应用程序,并开启一个 http服务 以供使用。golang packr 包文档 packr项目文档地址 目前最新版本为 v2.8.1 版本,推荐使用 v2 版本进行开发。packr 包 官方介绍Packr is a simple solution for bundling static assets inside of Go binaries. Most importantly it does it in a way that is friendly to developers while they are developing Packr是将静态资产捆绑到 Go 二进制文件中的简单解决方案。最重要的是,它以对开发人员在开发期间友好的方式进行。 可以看...

软件工具,Golang,解决方案 2021-09-24 PM 962次 0条

phpstorm及jetbrains永久免费激活工具插件无限试用使用(2021年之前的版本有效)

  jetbrains 家的产品用过的都知道非常好用,其中包括 phpstorm , goland , pycharm , webstorm , intellij idea 等等这些都是非常强大及好用的开发工具,但是奈何 jetbrains 系列的工具都是要收费激活的虽然淘宝上有便宜的 学生邮箱 和 破解版 但是这些非常 容易被封 ,博主已经入了两次淘宝的坑了,今天要讲的是一个 免费且永久激活无限试用 的强大第三方扩展工具 IDE Eval Reset IDE Eval Reset 无限 jetbrains 试用插件项目背景jetbrains 系列产品有一个很良心的地方,每个产品他都会允许你 试用30天 (这个数字写死在代码里了)以评估是否你真的需要为它而付费。但很多时候会出现一种情况 IDE并不能按照我们实际的试用时间来计算 。 比如我们开始了试用,然后媳妇生孩子要你回去陪产,陪产时我们并无空闲对 IDE试用评估 ,它依旧算试用时间(只是举个例子,或许你并没有女朋友),发现了吗?你未能真的有 30天 来对它进行全面的 试用评估 ,你甚至无法作出是否付费的决定。此时你会想要 延长...

软件工具,解决方案 2021-09-12 PM 5330次 0条