kuiper规则数上限测试的突发问题
背景
kuiper的官网中有提到:kuiper支持8000条规则下的数据路由处理,于是我便尝试搭建该测试环境试试。
测试方法
如图,我搭建了一个虚机来跑Kuiper,Kuiper会订阅Emqx Broker的Topic,这时候我用一个MQTT客户端(比如MQTTBox或者Jmeter)向Emqx Broker特定topic发送消息。Kuiper中的规则引擎就会对订阅到的每条消息进行过滤处理(即类似执行sql),并输出到Kuiper的日志中。
突发问题
使用前文提到的环境,在kuiper上创建了8000条规则,然后重启一下kuiper机器。
docker restart kuiper
1)查看kuiper的日志:
如果在kuiper容器内部:tail -f log/stream.log
如果是在宿主机上:docker logs -f kuiper
可以看到日志报错说连EMQX Broker的1883端口超时了,这里每个规则都会向EMQX Broker订阅一个topic(图中有提到subscribe to topic)。
这里就有些奇怪了,EMQX号称能撑近百万连接,为啥不到6000多链接数就扛不住了呢,是不是有bug?
2)查看emqx日志
tailf -f /var/log/emqx/emqx.log.1
可以看到这里EMQX报错了,说文件描述符超限了。
3)修改文件描述符
执行:vi /etc/sysctl.conf,写入如下内容:
fs.file-max = 12553500
fs.nr_open = 12453500
输入:x保存退出,然后执行sysctl -p使之生效。
4)重启emqx
sudo systemctl restart emqx
5)再次查看kuiper日志
通过:curl http://localhost:9081/rules,可以看到8000条规则创建成功,真相大白,果然不是EMQX的锅。
博主:测试生财
座右铭:专注测试与自动化,致力提高研发效能;通过测试精进完成原始积累,通过读书理财奔向财务自由。
csdn:https://blog.csdn.net/ccgshigao
- 关于iOS测试机个数上限的详细规则
- 关于iOS测试机个数上限的详细规则
- 关于iOS测试机个数上限的详细规则
- 关于iOS测试机个数上限的详细规则
- 关于iOS测试机个数上限的详细规则
- 转:关于iOS测试机个数上限的详细规则
- 关于iOS测试机个数上限的详细规则
- 关于iOS测试机个数上限的详细规则
- 性能测试工具开发过程中遇到的问题汇总
- 由Monkey测试引发的跨多个进程的Android系统死锁问题分析
- 《软件测试管理》第14章 软件测试常见问题——(三)测试流程常见问题
- 关于软件版本号的问题 软件版本号命名规则
- 嵌入式软件三大潜在问题及测试技术
- utf-8编码问题之urlencode和getbytes得到的utf-8区别验证测试
- 测试菜鸟在测试过程发现问题并整理的问题分析解决方案
- Tiles框架教程 简单规则 解决匹配问题
- Applause,用低科技手段解决高科技问题的众包测试团
- C语言测试:想成为嵌入式程序员应知道的13+3个基本问题
- 手机移动APP安全测试方法、工具和一些容易产生安全问题
- asp.net mvc 安全测试漏洞 "跨站点请求伪造" 问题解决