编译redis时报错zmalloc.h:50:31: 错误:jemalloc/jemalloc.h:

简介:

如果有MALLOC这环境变量,会有用这个环境变量的去建立Redis。而且libc并不是默认的内存分配器, 默认是jemalloc,因为jemalloc被证明比libc有更少的fragmentation problems。但是如果没有jemalloc 而只有libc会make出错。所以解决方法有如下两种:

(1)指定参数:

make MALLOC=libc

(2)安装jemalloc:jemalloc干了malloc干的活,而且干得好一些,主要体现在避免内存碎片与并发扩展上。

  1. 下载jemalloc:

    https://github.com/jemalloc/jemalloc/releases

 2.编译安装:

    ./configure --prefix=/usr/local/jemalloc && make && make install

 3.添加链接:

    echo /usr/local/jemalloc/lib >> /etc/ld.so.conf

 4.刷新库:

    ldconfig




 本文转自 棋帅小七 51CTO博客,原文链接:http://blog.51cto.com/xvjunjie/2071671

相关文章
|
NoSQL Linux Redis
在Windows下使用msys2编译最新版的Redis
在Windows下使用msys2编译最新版的Redis
1857 0
|
NoSQL Linux Redis
|
NoSQL API Redis
错误使用.Net Redis客户端CSRedisCore,自己挖坑自己填
在使用CSRedisCore客户端时,要深入理解 ① Stackexchange.Redis 使用的多路复用连接机制(使用时很容易想到注册为单例),CSRedisCore开源库采用连接池机制,在高并发场景下强烈建议注册为单例, 否则在生产使用中可能会误用在瞬态请求中实例化,导致redis连接数几天之后消耗完。 ② CSRedisCore会默认建立连接池,预热50个连接,开发者要心中有数。 额外的方法论: 尽量不要从某度找答案,要学会问问题,并尝试从官方、stackoverflow、github社区寻求解答,你挖过的坑也许别人早就挖过并踏平过。
错误使用.Net Redis客户端CSRedisCore,自己挖坑自己填
|
NoSQL Linux Redis
基于centos7.7编译Redis6.0
基于centos7.7 源码编译redis-6.0.6记录
485 2
|
JSON NoSQL Redis
Redis反序列化错误Could not read JSON: Cannot construct instance of `java.util.ArrayList$SubList`
Redis反序列化错误Could not read JSON: Cannot construct instance of java.util.ArrayList$SubList
1384 1
Redis反序列化错误Could not read JSON: Cannot construct instance of `java.util.ArrayList$SubList`
|
NoSQL 搜索推荐 算法
Redis源码在windows下的成功编译(附cmake工程配置)
Redis源码在windows下的成功编译(附cmake工程配置)
|
存储 NoSQL Unix
Linux系统之源码编译部署Redis数据库
Linux系统之源码编译部署Redis数据库
344 0
Linux系统之源码编译部署Redis数据库
|
NoSQL Linux Redis
LINUX下载编译redis
LINUX下载编译redis
142 0
|
NoSQL JavaScript Shell
arm64 环境利用 docker 编译 redis filebeat airflow hue 以及 alertmanager 镜像
arm64 环境利用 docker 编译 redis filebeat airflow hue 以及 alertmanager 镜像
934 0