===============================================================================================
基本环境 单机安装
===============================================================================================
1、安装gcc
yum install gcc
=============================================================================================================================================================================
Package Arch Version Repository Size
=============================================================================================================================================================================
Installing:
gcc x86_64 4.4.7-16.el6 base 10 M
Installing for dependencies:
cloog-ppl x86_64 0.15.7-1.2.el6 base 93 k
cpp x86_64 4.4.7-16.el6 base 3.7 M
mpfr x86_64 2.4.1-6.el6 base 157 k
ppl x86_64 0.10.2-11.el6 base 1.3 M
Updating for dependencies:
libgcc x86_64 4.4.7-16.el6 base 103 k
libgomp x86_64 4.4.7-16.el6 base 134 k
?
手动安装gcc步骤:
Updating : libgcc-4.4.7-16.el6.x86_64 1/9
Installing : ppl-0.10.2-11.el6.x86_64 2/9
Installing : cloog-ppl-0.15.7-1.2.el6.x86_64 3/9
Installing : mpfr-2.4.1-6.el6.x86_64 4/9
Installing : cpp-4.4.7-16.el6.x86_64 5/9
Updating : libgomp-4.4.7-16.el6.x86_64 6/9
Installing : gcc-4.4.7-16.el6.x86_64 7/9
2、make
????make若报错:zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
????make MALLOC=libc --在redis readme文件中有说明
?
3、make install
?
4、调优
4.1修改/etc/sysctl.conf vm.overcommit_memory=1
???? vm.overcommit_memory参数有三种可能的配置:
????????0 表示检查是否有足够的内存可用,如果是,允许分配;如果内存不够,拒绝该请求,并返回一个错误给应用程序。
????????1 表示根据vm.overcommit_ratio定义的值,允许分配超出物理内存加上交换内存的请求。vm.overcommit_ratio参数是一个百分比,加上内存量决定内存可以超量分配多少内存。例如,vm.overcommit_ratio值为50,而内存有1GB,那么这意味着在内存分配请求失败前,加上交换内存,内存将允许高达1.5GB的内存分配请求。
????????2 表示内核总是返回true。
4.2修改/proc/sys/net/core/somaxconn
???? cat /proc/sys/net/core/somaxconn --default 128
???? echo 511 > cat /proc/sys/net/core/somaxconn
???? 将禁用命令加入 /etc/rc.local
????定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数.限制了接收新 TCP 连接侦听队列的大小。对于一个经常处理新连接的高负载 web服务环境来说,默认的 128 太小了。大多数环境这个值建议增加到 1024 或者更多。 服务进程会自己限制侦听队列的大小(例如 sendmail(8) 或者 Apache),常常在它们的配置文件中有设置队列大小的选项。大的侦听队列对防止拒绝服务 DoS 攻击也会有所帮助。
4.3禁用THP
echo never > /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/transparent_hugepage/enabled
将禁用命令加入 /etc/rc.local
????设置最大文件打开数量
ulimit -a
????????ulimit -n 10032 --该命令可以放到/etc/rc.local中
????????终极修改
????????????vi /etc/security/limits.conf
????????????* soft nofile 65536
????????????* hard nofile 65536