想了解一下swoole_table与redis的性能比较,故写个脚本压测。
脚本代码逻辑:设置10000个int型值。
压测工具:ab
ab -c 5 -n 100 http://www.xxx.com/index.php
-c 5表示并发用户数为5
-n 100表示请求总数为100
redis代码图:
swoole_table代码:
redis压测结果图:
swoole_table压测结果图:
redis脚本压测用了18.357秒,swoole_table脚本只用了0.682秒。
分析:两个都是把数据存在内存,为啥差别如此之大呢,个人分析:1、swoole_table是常驻内存,不用连接服务,不过有个小缺点,要先估计着分配内存。2、redis代码没做单例模式,要打开连接100次redis服务,比较耗时,估计使用单例模式会好点。整体来说swoole_table性能不错的。