以下列出了有关提高繁忙 FTP 站点性能的一些建议。
通常支持许多同时连接的站点应在单机模式下运行 FTP 服务器,请参见自动启动 FTP 服务器。
使用 vmstat 和其他系统实用程序监视驻留 FTP 服务器的系统。如果系统资源不足,请对同时连接的数量设置限制,请参见如何设置用户登录限制。有关系统监视的更多信息,请参见《系统管理指南:高级管理》中的第 20 章 “监视系统性能(任务)”。
如果强加连接限制,请考虑使用 ftpaccess 文件中的 limit-time 和 timeout idle 功能以阻止用户扰乱连接。如果不强加连接限制,请针对 in.ftpd 指定 -Q 选项。
如果不需要 /var/adm/wtmpx 中的 ftp 登录和注销记录,请针对 in.ftpd 指定 -W 选项。
要降低驻留 FTP 服务器的系统的负载,请使用 ftpaccess 文件中的 recvbuf 和 sendbuf 功能增加传送缓冲区大小。如果选择比较大的缓冲区大小,则可能需要使用 ftpaccess 文件中的 timeout data 功能增加数据活动超时。
FTP 服务器将读取各种数据库中的内容,包括主机、口令、组和服务。较慢的查找可能会导致登录到 FTP 服务器出现严重延迟,首先在 nsswitch.conf 中配置files 资源可将查找时间降至最低。有关更多信息,请参见 nsswitch.conf(4) 手册页。
缺省情况下,FTP 服务器尝试查找远程主机的名称,此过程可能很慢,将会导致登录出现严重延迟。ftpaccess 文件中的rhostlookup 功能可用于停止此查找。但是,请注意,如果没有查找远程主机的名称,使用 ftpaccess 文件中的其他功能和匹配 ftphosts 文件中的项时,将仅匹配远程主机的 IP 地址。远程主机的 IP 地址也将在消息和 %R 魔饼位置中使用。有关更多详细信息,请参见 ftpaccess(4) 手册页中 rhostlookup 功能的说明。
检索配额信息也可能导致登录到 FTP 服务器时出现严重延迟,因此如果利用配额魔饼,请仅使用 ftpaccess 文件中的 quota-info 功能。有关配额魔饼的列表,请参见 ftpaccess(4) 手册页。