IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

让Redis使用TCMalloc,实现高性能NOSql服务器

Elton's Blog 2011-07-30 21:21:19 累计浏览 7,343 次
本机暂存

TCMalloc(Thread-Caching Malloc)是google开发的开源工具──“google-perftools”中的成员。与标准的glibc库的malloc相比,TCMalloc在内存的分配上效率和速度要高得多,可以在很大程度上提高MySQL服务器在高并发情况下的性能,降低系统负载。

TCMalloc库的安装步骤(Linux环境):
Step 1. 64位操作系统请先安装libunwind库(32位操作系统不要安装)
libunwind库为基于64位CPU和操作系统的程序提供了基本的堆栈辗转开解功能,其中包括用于输出堆栈跟踪的API、用于以编程方式辗转开解堆栈的API以及支持C++异常处理机制的API。

1
2
3
4
5
6
wget http://download.savannah.gnu.org/releases/libunwind/libunwind-0.99-alpha.tar.gz  
tar zxvf libunwind-0.99-alpha.tar.gz  
cd libunwind-0.99-alpha/  
CFLAGS=-fPIC ./configure  
make CFLAGS=-fPIC  
make CFLAGS=-fPIC install

Step 2、安装google-perftools:

1
2
3
4
5
6
7
8
wget http://google-perftools.googlecode.com/files/google-perftools-1.8.1.tar.gz  
tar zxvf google-perftools-1.8.1.tar.gz  
cd google-perftools-1.8.1/  
./configure  --disable-cpu-profiler --disable-heap-profiler --disable-heap-checker --disable-debugalloc --enable-minimal
make && make install  
 
sudo echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local_lib.conf  #如果没有这个文件,自己建一个
sudo /sbin/ldconfig

Step 3. 安装Redis

1
2
3
4
5
$ curl -O http://redis.googlecode.com/files/redis-2.2.12.tar.gz  
$ tar xzvf redis-2.2.12.tar.gz  
$ cd redis-2.2.12  
$ make USE_TCMALLOC=yes
$ sudo make install

Step 4. 检查tcmalloc是否生效

1
2
sudo lsof -n | grep tcmalloc
redis-ser 31590      elton  mem       REG                8,3  1155539    4856411 /usr/local/lib/libtcmalloc_minimal.so.0.2.1

Step 5. 测试Redis

1
2
3
4
5
6
7
8
9
10
11
12
# 修改配置文件:
vim redis.conf
# 找到 daemonize,将后面的no改为yes,让其可以以服务方式运行
# 然后启动 redis:
$ ./redis-server ./redis.conf
 
#连接数据库进行测试
$ src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

同分类推荐文章

  1. 使用deepseek进行Oracle恢复,引起重大故障 (2026-06-22 10:56:00)
  2. 接手一个只差临门一脚的数据库恢复 (2026-06-18 00:13:09)
  3. 我做了一个 AI 版的 StarRocks 升级风险扫描工具,直接帮我定位到一个风险 (2026-06-15 01:00:00)

查看更多 数据库 文章 →

建议继续学习

  1. redis源代码分析 - persistence (累计阅读 32,228)
  2. Redis消息队列的若干实现方式 (累计阅读 12,085)
  3. 基于Redis构建系统的经验和教训 (累计阅读 10,521)
  4. 浅谈redis数据库的键值设计 (累计阅读 9,353)
  5. 【2014年版】异地购房提取北京公积金 (累计阅读 9,147)
  6. redis运维的一些知识点 (累计阅读 8,682)
  7. redis在大数据量下的压测表现 (累计阅读 8,292)
  8. Redis和Memcached的区别 (累计阅读 8,069)
  9. redis 运维实际经验纪录之一 (累计阅读 7,711)
  10. Redis作者谈Redis应用场景 (累计阅读 7,668)