jemalloc

Centos7安装Redis3.0.5过程记录

南笙酒味 提交于 2019-12-07 13:33:12
先更新一下系统。 [janl@svr1 ~]$ sudo yum update [sudo] password for janl: Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirror.bit.edu.cn * extras: mirror.bit.edu.cn * updates: mirror.bit.edu.cn No packages marked for update 没有wget,先安装wget. [janl@svr1 ~]$ sudo yum install wget 下载Redis 3.0.5 源码压缩包。 [janl@svr1 ~]$ wget http://download.redis.io/releases/redis-3.0.5.tar.gz --2015-11-17 23:01:06-- http://download.redis.io/releases/redis-3.0.5.tar.gz Resolving download.redis.io (download.redis.io)... 109.74.203.151 Connecting to download.redis.io (download.redis.io)|109.74

Linux安装jemalloc笔记

前提是你 提交于 2019-12-06 03:31:51
前言 最近研究一个工具库需要用 jemalloc 做内存分配器,但在 ubuntu 下安装过程中遇到很多问题,故记下安装过程的笔记,避免以后遇到在这上面浪费时间。 安装过程 环境:VMware Ubuntu 18.04.3 LTS cd ~/桌面 wget https://github.com/jemalloc/jemalloc/releases/download/5.0.1/jemalloc-5.0.1.tar.bz2 tar -jxvf jemalloc-5.0.1.tar.bz2 cd jemalloc-5.0.1 sudo apt-get install autogen autoconf ./autogen.sh make -j2 sudo make install sudo ldconfig cd ../ rm -rf jemalloc-5.0.1 jemalloc-5.0.1.tar.bz2 注意安装 jemalloc 不要放在共享目录中. 例如可以放在桌面上. 因为安装过程中需要建立 ln -sf libjemalloc.so.2 lib/libjemalloc.so 软链在共享目录的分区情况下会出问题(因为我的Ubuntu 是在 VMWare 中, 共享目录无法软链). Linux下找不到so文件的解决办法 但在启动应用程序报找不到libjemalloc.so

centos6安装tengine

蓝咒 提交于 2019-12-04 17:08:33
1、安装必要的编译环境好 由于Tengine安装需要使用源代码自行编译,所以在安装前需要安装必要的编译工具: # yum update # yum install gcc gcc-c++ autoconf automake 2、安装需要的组件 A、PCRE PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx rewrite依赖于PCRE库,所以在安装Tengine前一定要先安装PCRE,最新版本的PCRE可在官网(http://www.pcre.org/)获取。具体安装流程为: # cd /usr/local/src # wget http://ncu.dl.sourceforge.net/project/pcre/pcre/8.38/pcre-8.38.tar.gz # tar zxvf pcre-8.38.tar.gz # cd pcre-8.38 # ./configure --prefix=/usr/local/pcre # make && make install 附加信息: 源码的安装一般由3个步骤组成:配置(configure)、编译(make)、安装(make install)。 Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令.

CentOS 6/7 下安装 Redis 2.8.7

老子叫甜甜 提交于 2019-12-03 09:50:09
wget http://download.redis.io/redis-xxxxx.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make 安装依赖(如果没有则安装安装): yum install gcc-c++ yum install -y tcl yum install -y jemalloc 前面3步应该没有问题,主要的问题是执行make的时候,出现了异常。 异常一: make[2]: cc: Command not found 异常原因:没有安装gcc 解决方案:yum install gcc-c++ 异常二: zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory 异常原因:一些编译依赖或原来编译遗留出现的问题 解决方案:make distclean。清理一下,然后再make。 在make成功以后,需要make test。在make test出现异常。 异常一: couldn't execute "tclsh8.5": no such file or directory 异常原因:没有安装tcl 解决方案:yum install -y tcl。 在make成功以后,会在src目录下多出一些可执行文件:redis-server

安卓交叉编译jemalloc静态库

匿名 (未验证) 提交于 2019-12-03 00:26:01
git上下载最新的jemalloc源码:git clone --depth=1 https://github.com/jemalloc/jemalloc.git Makefile # Clear out all vpaths, then set just one (default vpath) for the main build # directory. vpath vpath % . # Clear the default suffixes, so that built-in rules are not used. .SUFFIXES : SHELL := /bin/sh CC := gcc CXX := g++ # Configuration parameters. DESTDIR = BINDIR := $(DESTDIR)/usr/local/bin INCLUDEDIR := $(DESTDIR)/usr/local/include LIBDIR := $(DESTDIR)/usr/local/lib DATADIR := $(DESTDIR)/usr/local/share MANDIR := $(DESTDIR)/usr/local/share/man srcroot := objroot := abs_srcroot := /home/chaos/skynet

关于查看进程所占用物理内存的问题

匿名 (未验证) 提交于 2019-12-02 23:32:01
关于查看进程所占用物理内存的问题 一般查看进程所占物理内存的方法有: 1) top 其中的RES(其实就是RSS) 和SHR(就是本进程中共享库等占用的总大小,不取平均时)列。 2)ps 其中ps或者新版本android中ps -A显示 其中的RSS 3)pmap 新版本的android支持pmap命令 pmap -x 进程号 其中的 PSS和swap列。 swap是交换到zram或者磁盘的物理内存大小。 需要注意的是: Terms VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存) RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存) PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存) USS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存) 一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS 另外android以前使用 MALLOC_IMPL = dlmalloc 来切换dlmalloc和jemalloc。没有定义MALLOC_IMPL宏时,默认是jemalloc android新版本,例如android O,不能再定义MALLOC_IMPL了,否则lunch时报错。而改用: MALLOC_SVELTE

Jemalloc优化MySQL和Nginx

无人久伴 提交于 2019-12-02 22:40:18
Redis 2.4版本之后,默认使用jemalloc来做内存管理;tengine也整合jemalloc 。jemalloc从各方评测的结果可见与google tcmalloc都不相伯仲,皆为内存管理器领域最高水平。如下图: 图片来源: facebook 最左边的就是glibc的malloc,最右边的就是jemalloc。从图表上可以看出,jemalloc的性能有glibc的两倍以上。非常压 倒性的性能差异。因此,使用了jemalloc的应用程序自然会快很多。Jemalloc旁边的就是tcmalloc。Tcmalloc的性能与其相差甚 微,低jemalloc2.1.0慢4.5%。图上和tcmalloc的1.4版本,而现在已经到2.1版本,因此实际上这两者应该是不相仲伯的。 Jemalloc的创始人jason evans也意识到这一点,说在cpu core 8以上的计算机上jemalloc效率更高。 MySQL 性能测 试–jemalloc内存管理: http://www.linuxeye.com/Linux/1914.html 安装jemalloc cd lnmp/src wget http://www.canonware.com/download/jemalloc/jemalloc-3.4.0.tar.bz2 tar xjf jemalloc-3.4.0.tar.bz2 cd

Java开发之AWS redis下载和配置

匿名 (未验证) 提交于 2019-12-02 21:53:52
下载文件名为: redis-4.0.9.tar.gz scp -i /Users/lby/key .pem -r /Users/lby/Desktop/AWS文件/redis- 4.0 .9 .tar .gz ec2-user @123 .123 .123 .1523 :/data 以上命令表示:将 redis-4.0.9.tar.gz 文件上传至服务器 /data 文件夹下. - 注意: scp的具体用法可以参考 解压文件命令如下: tar -zxvf redis- 4.0 .9 .tar .gz 此时当前路径下的文件名为redis-4.0.9.如果需修改文件名,使用以下命令: mv redis-4.0.9 redis 命令含义为: mv 原文件名 修改后文件名 cd / data /redis make 如果出现以下错误: make[3]: Entering directory `/data/installfiles/redis-4.0.9/deps/hiredis' gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c make[3]: gcc: Command not found make[3]: *** [net.o] Error

jemalloc优化MySQL、Nginx内存管理

笑着哭i 提交于 2019-12-01 14:51:16
上一篇文章《 TCMalloc优化MySQL、Nginx、Redis内存管理 》,下 面来看下 jemalloc jemalloc源于Jason Evans 2006年在BSDcan conference发表的论文:《 A Scalable Concurrent malloc Implementation for FreeBSD 》。 jason认为phkmalloc(FreeBSD’s previous malloc implementation by Kamp (1998))没有考虑多处理器的情况,因此在多线程并发下性能低下(事实如此),而jemalloc适合多线程下内存分配管理。从2007年开始以 FreeBSD标准引进来。软件技术革新很多是FreeBSD发起,在FreeBSD应用广泛的技术会慢慢导入到 Linux 中。 Redis 2.4版本之后,默认使用jemalloc来做内存管理;tengine也整合jemalloc 。jemalloc从各方评测的结果可见与google tcmalloc都不相伯仲,皆为内存管理器领域最高水平。如下图: 图片来源: facebook 最左边的就是glibc的malloc,最右边的就是jemalloc。从图表上可以看出,jemalloc的性能有glibc的两倍以上。非常压 倒性的性能差异。因此,使用了jemalloc的应用程序自然会快很多

MySql主从配置(主从热备份)

ⅰ亾dé卋堺 提交于 2019-12-01 09:33:02
环境说明 系统:centos7.5 软件版本:mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz 安装目录:/usr/local/mysql 数据库目录:/data/mysql 数据库root密码:hc123456 A数据库:192.168.2.72 主 B数据库:192.168.2.73 从 数据库同步账号: sync 数据库sync密码: pcpaeyphmp 安装MySql 两台分别都安装 创建用户,组 创建mysql组指定组id为1200,创建mysql用户指定用户id为1200默认组mysql groupadd -g 1200 mysql useradd -r -g mysql -u 1200 -s /sbin/nologin mysql 创建数据目录 mysql数据库数据存储目录 datadir=/data/mysql # 数据库数据存储目录 mkdir -p $datadir basedir=/usr/local/mysql # 数据库安装目录 关闭Selinux setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config 安装 jemalloc 配置软件安装源,安装jemalloc适合多线程下内存分配管理,减少内存碎片 rm -rf