Urk*_*koM 5 ubuntu squid ulimit max-file-descriptors ubuntu-10.04
我在 Ubuntu 10.04 64 位上运行 Squid 2.7。我遇到了 Squid 耗尽文件描述符的问题,/var/log/squid/cache.log 中显示以下错误:
警告!您的缓存已用完文件描述符
我检查过:
鱿鱼客户端经理:信息 | grep '文件描述'
它显示我只有 1024 个可用的文件描述符。
我更改了 /etc/security/limits.conf,在末尾添加了以下内容:
* soft nofile 32768
* hard nofile 32768
proxy soft nofile 32768
proxy hard nofile 32768
Run Code Online (Sandbox Code Playgroud)
将其添加到 /etc/squid/squid.conf 中:
max_filedescriptors 32768
Run Code Online (Sandbox Code Playgroud)
还更改了/etc/default/squid:
SQUID_MAXFD=32768
Run Code Online (Sandbox Code Playgroud)
什么都没有解决。最后我编辑/etc/init.d/squid添加“ulimit -n 32768”:
#!/bin/sh -e
# upstart-job
#
# Symlink target for initscripts that have been converted to Upstart.
set -e
ulimit -n 32768
<... snipped ...>
Run Code Online (Sandbox Code Playgroud)
成功了!:)
我必须在实时生产 Squid 服务器极其缓慢的压力下完成这一切,所以我确信这不是正确的方法。
但正确的做法是什么?
我以前也遇到过同样的问题。我无法增加 quid 文件描述符的数量。
除了您所做的之外,我还使用以下配置选项配置了鱿鱼:
./configure --prefix=/usr/local/squid --enable-start-stop-daemon --with-filedescriptors=65536 --enable-storeio=ufs,aufs --with-aufs-threads=10
Run Code Online (Sandbox Code Playgroud)
案例的重要部分是:
--with-filedescriptors=65536
Run Code Online (Sandbox Code Playgroud)
执行此操作并重新启动鱿鱼后,我得到了文件描述符的最大值:65536。
当然,这需要从源代码而不是命令安装squid:
apt-get install squid
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9355 次 |
| 最近记录: |