编辑/etc/sysctl.conf文件,优化Redis相关的内核参数,提升网络吞吐量与连接稳定性:
net.core.somaxconn(默认通常为128),建议调整为4096,避免高并发下连接被拒绝;net.ipv4.ip_local_port_range为"1024 65000",增加可用的临时端口数量,支持更多客户端连接;net.ipv4.tcp_syncookies=1,防止SYN Flood攻击导致的服务不可用。sudo sysctl -p使配置生效。编辑Redis配置文件/etc/redis/redis.conf,合理配置bind参数:
bind设置为内网IP(如bind 192.168.1.100);若需允许远程访问,可设置为0.0.0.0(需配合防火墙限制);unixsocket /run/redis.sock),需确保bind不与Socket路径冲突。sudo systemctl restart redis-server。redis.conf中添加requirepass your_strong_password(如Complex@Pass2024),强制客户端连接时输入密码;rename-command重命名或禁用高危命令(如FLUSHALL、CONFIG),例如rename-command FLUSHALL ""(清空数据库命令失效);ufw限制Redis端口(默认6379)的访问,仅允许可信IP访问:sudo ufw allow from trusted_ip to any port 6379/tcp。redis.conf中配置save指令(如save 900 1表示900秒内至少1次修改则触发保存)和appendonly yes(开启AOF日志),防止数据丢失;maxmemory(如maxmemory 4gb),避免Redis占用过多内存导致系统崩溃;maxmemory-policy(如allkeys-lru),当内存满时自动淘汰最近最少使用的键。编辑redis.conf,设置tcp-keepalive 300(单位:秒),定期发送TCP Keepalive探测包,检测客户端连接是否存活,避免因长时间空闲导致的连接超时断开。
使用sudo apt update && sudo apt upgrade redis-server将Redis升级到最新稳定版(如Debian 12默认仓库中的Redis 7.x),新版本通常包含网络性能优化、安全补丁及bug修复。
使用ss -tuln | grep 6379查看Redis监听的端口和连接状态;通过redis-cli info stats获取Redis的网络性能指标(如total_connections_received连接数、total_net_input_bytes接收字节数),定期监控这些指标可快速定位网络瓶颈。