2022年9月27日
摘要:
在实际生产环境中,缓存的使用规范一直备受重视的,如果使用的不好,很容易遇到缓存穿透、缓存击穿、雪崩等严重异常情景,从而给系统带来难以预料的灾害。 为了避免缓存使用不当带来的损失,我们有必要了解每种异常产生的原因和解决办法,从而做出更好的预防措施。 一 缓存穿透缓存穿透是指客户端请求的数据在缓存中和数
阅读全文
posted @ 2022-09-27 13:51
Ruthless
阅读(304)
推荐(0)
2022年9月19日
摘要:
OpenResty+Lua限流实战目录一. 限制并发二. 反向代理三. 内部重定向四. lua初始化五. 限制接口时间窗请求数(非平滑)六. 限制接口时间窗请求数(平滑) a. 桶(无容量) b. 漏桶(有桶容量)七. 令牌桶八. 组合各种limter 一. 限制并发 场景1:按照 ip 限制其并发
阅读全文
posted @ 2022-09-19 13:46
Ruthless
阅读(1997)
推荐(0)
2022年9月16日
摘要:
如何做到API接口防刷 背景目前在做的系统有提供Open API接入,即客户通过API Key接入使用系统功能。所允许接入的API根据功能种类不同所需系统开销有所差异,从技术角度希望对系统增加一些保护措施,避免用户接入使用过程有意或无意高频调用一些API对系统构成压力,从而影响整个系统稳定性。 限制
阅读全文
posted @ 2022-09-16 17:16
Ruthless
阅读(2178)
推荐(1)
posted @ 2022-09-16 10:27
Ruthless
阅读(47)
推荐(0)
2022年9月9日
posted @ 2022-09-09 14:50
Ruthless
阅读(158)
推荐(0)
2022年9月8日
摘要:
nginx并发量优化 高并发下nginx调优实战(值得收藏)
阅读全文
posted @ 2022-09-08 10:15
Ruthless
阅读(71)
推荐(0)
2022年9月6日
posted @ 2022-09-06 11:16
Ruthless
阅读(0)
推荐(0)
2022年9月2日
摘要:
--Lua 面向对象(实现类的创建和实例化、封装、继承、多态) --1、Lua面向对象基础 --1.1、Lua类的创建和实例化 --name、age相当于person对象的成员变量,eat()相当于person对象方法 person={name='张三', age=20} function pers
阅读全文
posted @ 2022-09-02 14:10
Ruthless
阅读(852)
推荐(0)
摘要:
-- list索引从1开始 list = {} list.__index = list function list:new() local o = {} setmetatable(o, self) return o end function list:add(item) table.insert(s
阅读全文
posted @ 2022-09-02 11:29
Ruthless
阅读(215)
推荐(0)
摘要:
map = {} local this = map function this:new() o = {} setmetatable(o,self) self.__index = self self.count = 0 return o end -- put在放入数据时,如果放入数据的key已经存在M
阅读全文
posted @ 2022-09-02 11:28
Ruthless
阅读(162)
推荐(0)
2022年8月31日
摘要:
openresty使用lua连接mysql OpenResty+Lua限流实战
阅读全文
posted @ 2022-08-31 12:13
Ruthless
阅读(35)
推荐(0)
摘要:
一、阿里云配置0、sls日志应用主界面 1、创建Project 2、创建logStore创建logStore用于日志数据存储 3、开启索引开启日志库索引,tajia-log(Project) => tajia-api(logsearch) => 开启索引(右上角) 二、nijia-test项目配置1
阅读全文
posted @ 2022-08-31 11:39
Ruthless
阅读(3219)
推荐(0)
2022年8月30日
摘要:
1、通过在“运行”中输入‘regedit’,打开注册表。 2、找到[HKEY_CLASSES_ROOT\Directory\Background]。 3、在[Background]下如果没有[shell],则右键-新建项[shell]。 4、在[shell]下右键-新建项[open in Git],
阅读全文
posted @ 2022-08-30 14:53
Ruthless
阅读(1129)
推荐(1)
2022年8月29日
摘要:
在web+lua+openresty开发中会大量操作redis,项目中的代码会重复创建连接-->数据操作-->关闭连接(或放到连接池)这个完整的链路调用完毕,甚至还要考虑不同的 return 情况做不同处理,就很快发现代码中有大量的重复代码。 因此推荐一个二次封装的类库。 1、编写redis_ire
阅读全文
posted @ 2022-08-29 19:42
Ruthless
阅读(485)
推荐(0)
摘要:
Linux/Centos在/etc/nginx/目录下创建conf.d/,用来存放自定义conf文件 Windows在D:/dev/nginx-1.9.14/目录下创建conf.d/,用来存放自定义conf文件 1、nginx.conf配置文件 #user nobody; worker_proces
阅读全文
posted @ 2022-08-29 14:27
Ruthless
阅读(1303)
推荐(0)
2022年8月26日
摘要:
第一种方式:使用通过ngx.location.capture 去方式实现,但是有一些限制第二种方式:因为openresty默认没有引入第三方http客户端类库lua-resty-http,需要下载(推荐)。 下载lua-resty-http类库 wget https://github.com/led
阅读全文
posted @ 2022-08-26 10:03
Ruthless
阅读(11458)
推荐(0)
2022年8月18日
摘要:
在很多复杂的业务场景下,排序的规则会比较复杂,单一的降序,升序无法满足日常需求。不过 ES 中提供了给文档加权重的方式来排序。 首先初始化三条测试数据,方便查看效果(type:1 为翻译,2 为转载,3 为原创): POST /language_index/_doc/1 { "id": 1, "ti
阅读全文
posted @ 2022-08-18 11:22
Ruthless
阅读(2936)
推荐(0)
2022年8月15日
摘要:
1、IGetter import java.io.Serializable; @FunctionalInterface public interface IGetter<T> extends Serializable { Object get(T source); } 2、ISetter impor
阅读全文
posted @ 2022-08-15 15:54
Ruthless
阅读(1186)
推荐(0)
2022年8月10日
摘要:
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
阅读全文
posted @ 2022-08-10 10:21
Ruthless
阅读(1652)
推荐(0)
2022年8月5日
摘要:
1、同义词词库准备一个同义词文件,每行一个同义词词组,例子sku_synonym.txt: 西红柿,番茄,tomato =>西红柿,番茄 马铃薯,土豆 =>马铃薯,土豆 社保,公积金 =>社保,公积金 注意:编码 UTF-8 (很关键!!!我就是被坑在这里) 2、上传同义词文件上传同义词文件,点击此
阅读全文
posted @ 2022-08-05 14:24
Ruthless
阅读(379)
推荐(0)