安装redis时Newer version of jemalloc required错误解决

安装redis时Newer version of jemalloc required错误解决

问题:

[root@localhost redis-4.0.0]# make 

cd src && make all
make[1]: Entering directory `/root/data/redis-4.0.0/src'
CC Makefile.dep
make[1]: Leaving directory `/root/data/redis-4.0.0/src'
make[1]: Entering directory `/root/data/redis-4.0.0/src'
CC adlist.o
In file included from adlist.c:34:
zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/root/data/redis-4.0.0/src'
make: *** [all] Error 2

 

解决方法:

# cd deps/

# make hiredis jemalloc linenoise lua geohash-int

#cd ..

#make

 

不要使用这样的解决方式:make MALLOC=libc

原因(摘自:http://www.jb51.net/article/100575.htm):

于tcmalloc,jemalloc和libc对应的三个内存分配器。其性能和碎片率如何呢?

下面是一个简单测试结果,使用Redis自带的redis-benchmark写入等量数据进行测试,数据摘自采用不同分配器时Redis info信息。

我们可以看到,采用tcmalloc时碎片率是最低的,为1.01,jemalloc为1.02,而libc的分配器碎片率为1.31,

posted @   耀阳居士  阅读(477)  评论(0编辑  收藏  举报
编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!
点击右上角即可分享
微信分享提示