因为redis报ERR max number of clients reached,查看是超过默认的最大连接数 10240了
在配置文件里面设置maxclients为了 2万,重启后,检查还是默认的,允许的最大连接数还是10240没变
系统信息:
系统是:centos 7,
单机redis是通过yum安装的,版本是7.0.5
系统修改了 ulimit是 655350
fs.file-max = 655350
/etc/security/limits.conf 修改了nofile 655350
付费20元求教,PM我
吉林省网友说:付费请教
江西省网友说:uname -a 看下
贵州省网友说:如果你已经在 Redis 配置文件中设置了 `maxclients` 参数,但是在重启后仍然没有生效,有几个可能的原因以及解决方法:
1. **重启 Redis 服务**:确保你在修改配置文件后重新启动了 Redis 服务。你可以使用以下命令重启 Redis:
“`
systemctl restart redis
“`
或者使用 `redis-cli`:
“`
redis-cli shutdown
systemctl start redis
“`
2. **检查配置文件路径**:确保你修改的是 Redis 正确的配置文件。默认情况下,Redis 配置文件通常位于 `/etc/redis/redis.conf`,但在某些系统上可能位于不同的位置。你可以使用 `ps aux | grep redis-server` 命令来查找正在运行的 Redis 服务器进程的配置文件路径。
3. **配置文件语法错误**:确保在配置文件中正确地设置了 `maxclients` 参数。在 Redis 配置文件中,你应该添加以下行:
“`
maxclients 20000
“`
确保没有任何语法错误或注释符号在这一行之前。
4. **检查 Redis 日志**:查看 Redis 日志文件,以查找任何与配置文件加载或参数设置相关的错误信息。你可以使用以下命令来查看 Redis 日志:
“`
tail -f /var/log/redis/redis.log
“`
或者你可以在 Redis 配置文件中指定日志文件的路径,以便更容易查看日志。
5. **配置文件优先级**:请注意,Redis 支持多个配置文件,并且它们的优先级不同。检查是否有其他配置文件覆盖了你的设置。你可以使用 `redis-server /path/to/your/redis.conf` 命令来强制加载特定配置文件。
6. **SELinux 或 AppArmor 问题**:如果你的系统启用了 SELinux 或 AppArmor 安全模块,它们可能会限制 Redis 对配置文件的访问。你可以通过禁用或调整安全模块的策略来解决此问题。
7. **检查操作系统限制**:你已经提到过修改了系统的 `ulimit` 和 `fs.file-max`,但请确保这些限制对 Redis 进程生效。你可以使用以下命令来验证进程的限制:
“`
cat /proc//limits
“`
确保 `Max open files` 和 `Max user processes` 的值已经正确设置。
如果你仍然遇到问题,可能需要详细检查 Redis 的日志文件以查找问题的根本原因。如果修改配置文件和重启 Redis 仍然不起作用,那么问题可能涉及到操作系统或其他更深层次的问题,可能需要进一步的系统调查和调试。
江苏省网友说:redis 是用来解决业务痛点的 你这是不是拿来当数据库用了