Redis单节点编译部署

本次博文采用redis-5.0.5!

一、安装编译环境

$ yum install gcc c++

二、获取软件、编译

$ wget http://download.redis.io/releases/redis-5.0.5.tar.gz
$ tar zxf redis-5.0.5.tar.gz && cd redis-5.0.5
$ make

三、准备工作目录及redis所需文件

$ mkdir -p /usr/local/redis/{bin,conf,data,logs}
$ cp /root/redis-5.0.5/src/redis* /usr/local/redis/bin/
$ cp /root/redis-5.0.5/redis.conf /usr/local/redis/conf/
$ cd /usr/local/redis/bin/
$ rm -f *.{c,h,o}
$ cd /usr/local/redis/conf/
$ cp redis.conf{,.bak}
$ egrep -v '^$|^#' redis.conf.bak > redis.conf

四、修改配置文件

$ vim /usr/local/redis/conf/redis.conf
# 仅仅标注需要修改的内容
bind 0.0.0.0 # 更改位监听所有地址
port 6379 # 监听的端口
daemonize yes # 启用守护进程
pidfile /usr/local/redis/data/redis_6379.pid # 指定pid文件
logfile "/usr/local/redis/logs/redis.log" # 指定日志文件
# requirepass 12345678 # 如果需要设置密码,打开此项
$ echo 'export PATH=${PATH}:/usr/local/redis/bin' >> /etc/profile
$ source /etc/profile
$ redis-server -v
Redis server v=5.0.5 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=5a375fdbca3fe645

五、启动redis

$ redis-server /usr/local/redis/conf/redis.conf
$ ss -anpt | grep 6379
LISTEN 0 128 *:6379 *:* users:(("redis-server",pid=22753,fd=6)
$ redis-cli # 本地连接
127.0.0.1:6379>
$ redis-cli -h 10.4.7.101 -p 6379 # 远端连接,则需要指定IP及端口
10.4.7.101:6379>

六、查看redis日志,解决warning问题

$ cat /usr/local/redis/logs/redis.log

20210201231643

接下来就解决这些warning问题。

6.1 解决最大打开文件数问题

$ ulimit -n # 查看当前值
1024
$ echo '* - nofile 65535' >> /etc/security/limits.conf
# 修改后,重新登录即可生效,重新登录后再次查看当前值
$ ulimit -n
65535

6.2 解决TCP积压值过小问题

$ echo "net.core.somaxconn = 1024" > /etc/sysctl.d/redis.conf
$ sysctl -p /etc/sysctl.d/redis.conf #刷新使其生效
net.core.somaxconn = 1024

6.3 允许分配所有的物理内存

$ echo "vm.overcommit_memory = 1" >> /etc/sysctl.d/redis.conf
$ sysctl -p /etc/sysctl.d/redis.conf # 刷新使其生效
net.core.somaxconn = 1024
vm.overcommit_memory = 1

6.4 解决内存透明大页警告warning问题

$ echo never > /sys/kernel/mm/transparent_hugepage/enabled
# 上述指令只是当前生效,重启后就会失效,接下来改为永久生效
$ echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
$ chmod +x /etc/rc.d/rc.local

至此,reboot重启服务器也好,只是重启redis服务也好,都不会再报哪些warning问题了。如下:

20210201232908

posted @   吕振江  阅读(176)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
浏览器标题切换
浏览器标题切换end
点击右上角即可分享
微信分享提示

目录导航