安装redis

 

禁用transparent_hugepage(重启redis后生效)

centos6 centos7默认开启transparent hugepage,可以加快fork子进程的速度,但是fork后,每个内存页从原来的4kb变成为2mb,会大幅增加重写期间父进程内存消耗,

同时每次写命令引起的复制内存页单位放大了512倍,会拖慢写操作的速度,导致大量写慢查询,建议禁用。

 

禁用HugePage

 

-- 动态禁用

 

echo never > /sys/kernel/mm/transparent_hugepage/enabled

 

echo never > /sys/kernel/mm/transparent_hugepage/defrag

 

-- 永久生效

 

vim /etc/rc.d/rc.local

 

if test -f /sys/kernel/mm/transparent_hugepage/enabled; then

 

  echo never > /sys/kernel/mm/transparent_hugepage/enabled

 

fi

 

if test -f /sys/kernel/mm/transparent_hugepage/defrag; then

 

  echo never > /sys/kernel/mm/transparent_hugepage/defrag

 

fi

更改tcp-backlog(正常情况下,sa已进行优化)

/proc/sys/net/core/somaxconn定义了系统中每一个端口最大的监听队列的长度,这是个全局的参数,默认值为128,对于高并发和多实例的系统建议增大该值。

echo 8192 > /proc/sys/net/core/somaxconn

设置合理的ulimit

默认的ulinit -n 为1024,一般不能满足需要,建议增大该值

##########################################

对于主从架构

master上不建议持久化,建议关闭rdb和aof,slave上开启rdb和aof,

为了减少IO争用,建议no-appendfsync-on-rewrite设置为yes。

#############################################

监控并调整swap

可以使用free -m查看当前swap的使用情况。

查看当前进程是否使用swap:

grep Swap /proc/${PID}/smaps

如果出现个别4kb的可以忽略,如果有很大的占用,说明该进程已经使用swap.

如果已经使用swap。请尽快调整

 

yum install gcc-c++

yum install -y tcl
wget http://download.redis.io/releases/redis-5.2.0.tar.gz
tar zxvf redis-5.2.0.tar.gz
cd redis-5.2.0
make
make test 
make PREFIX=/home/work/redis_6379 install

这里多了一个关键字 'PREFIX=' 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了 redis 必须存放在/home/work/redis_6379目录。这里指定好目录也方便后续的卸载,后续直接 rm -rf /home/work/redis_6379 即可删除 Redis。 

假设不添加该关键字 linux 会将:

  • 可执行文件存放在 /usr/local/bin'目录;
  • 库文件会存放在 /usr/local/lib 目录;
  • 配置文件会存放在 /usr/local/etc 目录;
  • 其他的资源文件会存放在 usr/local/share目录。

 

 

 

vi /home/work/redis_6379/conf/redis.conf
master:
daemonize yes
pidfile /home/work/redis_6379/tmp/redis.pid
port 6379
timeout 0
loglevel notice
logfile /home/work/redis_6379/log/redis.log
databases 16
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb
dir /home/work/redis_6379/data
slave-serve-stale-data yes
slave-read-only yes
repl-disable-tcp-nodelay no
slave-priority 100
requirepass ****
maxmemory 10737418240
appendonly no
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
lua-time-limit 5000
slowlog-log-slower-than 10000
slowlog-max-len 128
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64
activerehashing yes
client-output-buffer-limit normal 0 0 0
client-output-buffer-limit slave 256mb 64mb 60
client-output-buffer-limit pubsub 32mb 8mb 60
hz 10
aof-rewrite-incremental-fsync yes

# 从库:
slaveof 10.10.10.10 6379
masterauth  xxx

https://blog.csdn.net/vv_demon/article/details/7676384

 

 

 

 

1、官网下载redis。
https://redis.io/

2、解压tar包。

3、编译安装。

先用root新建一个目录/usr/local/redis:

然后安装:

4、移动配置文件并配置。配置为后台启动,端口号为6379,

 

5、配置开机自启动。

6、启动。

 

7、客户端连接测试。

 

posted @ 2018-10-06 12:33  igoodful  阅读(112)  评论(0编辑  收藏  举报