原副标题:Linux 上 Nginx 获最佳操控性的 8 种方式
NGINX 是一类盛行的、完全免费的开放源码 Web 伺服器。预设的 NGINX 实用性不足以让 Web 伺服器恒定组织工作。
但,假如您想充分运用 NGINX,则须要采用其命令行并增设可强化伺服器操控性的模块。您将在Linux 电脑上的 /etc/nginx 产品目录中找出命令行。
甚么是 NGINX?
NGINX 是一类当代 Web 伺服器,您能将其用作新闻媒体流、电子邮件伺服器、逆向全权、用户端器、内存伺服器等。
被 VMware、IBM、Cisco、Apple、Microsoft LinkedIn、Netflix、Facebook、Twitter 等许多大子公司采用,NGINX 以其世界级的操控性而为人所知。采用 NGINX 的另两个缺点是更易实用性和自学。
在 Linux 上修正 NGINX 操控性的必要条件
在已经开始采用 NGINX 实用性以后,您须要满足用户下列要求:
在 Linux 上布署和实用性 NGINX 伺服器 镜像:https://www.linuxmi.com/debian-11-nginx.html对 NGINX 或其命令行的基本上介绍
假如您满足用户那些明确要求,您就能修正 NGINX 以获最佳操控性。让他们看一看怎样去做。
1.在NGINX中实用性组织工作民主化
NGINX 构架由两个主民主化和数个组织工作民主化共同组成。主民主化的组织工作是评估结果实用性和管理工作建筑工人。再者,组织工作民主化的作用是处理传入的请求并在客户端和伺服器之间创建连接。
预设情况下,过程值增设为自动。这会将组织工作民主化的数量增设为等于可用 CPU 内核的数量。要介绍系统中有多少个 CPU 内核,请运行下列命令:
linuxmi@linuxmi:~/www.linuxmi.com$ grep processor /proc/cpuinfo | wc -l我的测试电脑只有1。
假如想增加 worker 民主化数,须要在 NGINX 的命令行中进行实用性。
采用 nano 打开文件:
linuxmi@linuxmi :~/www.linuxmi.com$ nano /etc/nginx/nginx.conf要实用性更多组织工作民主化,请将默认值更改为系统中可用 CPU 内核的最大数量。
2.实用性 worker_connections
您能修改以增强 NGINX 操控性的另两个模块是 Worker_Connections。这是每个组织工作民主化能同时处理的最大 TCP 连接数。
大多数系统的预设值为 512 个连接,但很多当代系统也支持更大的连接数。您能检查您的系统支持多少个连接:
linuxmi@linuxmi :~/www.linuxmi.com$ ulimit -n输出将是支持的最大连接数。然后,您能修改 NGINX 命令行中的 worker_connections 变量以提高操控性。
3. 在 NGINX 中允许 GZIP 压缩
NGINX 采用 GZIP 进行文件压缩和解压缩。假如在 NGINX 命令行中启用,您能节省带宽并在连接缓慢时提高网站的加载时间。
要允许 GZIP 压缩,请在 NGINX 命令行中添加下列行:
server{ gzipon; gzip_varyon; gzip_min_length10240; gzip_proxiedexpired no-cache no-store private auth; gzip_typestext/plain text/css text/xml text/java application/x-java application/xml; gzip_disable“MSIE [1-6]\.”; }4. 限制 NGINX 中的超时值
减少超时值在增强 NGINX 操控性方面也起着重要作用。keepalive 连接减少了打开和关闭连接时的处理器和网络开销。
您能修改命令行中的下列模块来限制超时:
http { client_body_timeout12; client_header_timeout12; keepalive_timeout15; send_timeout10; }5.修正缓冲区大小
您还能修正 NGINX 缓冲区以强化伺服器操控性。假如缓冲区大小太小,那么 NGINX 将写入两个临时文件,导致大量 I/O 操作不断运行。
您须要为 NGINX 增设下列缓冲区模块以使其发挥最佳功能:
http { client_body_buffer_size10K; client_header_buffer_size1k; client_max_body_size8m; large_client_header_buffers44k; }6.禁用访问日志或启用访问日志缓冲
日志会消耗大量磁盘空间和 CPU/IO 周期,假如它记录每个请求,这会影响伺服器的操控性。
您能禁用访问日志,这将节省一些磁盘空间和 CPU 处理。要禁用访问日志,请将下列行添加到 NGINX 命令行中:
access_logoff;日志很重要,因为它们有助于解决问题。完全禁用日志不是两个好的做法。在这种情况下,您能启用访问日志缓冲。这将允许 NGINX 缓冲一系列日志并将它们一次写入日志文件,而不是对每个请求应用不同的日志操作。
在 NGINX 命令行中添加下列行以允许访问日志缓冲:
access_log /var/ log/nginx/access.log main buffer= 16k7.修正 NGINX 静态内容内存周期
网站上跨页面保持相同的内容称为静态内容。内存此内容允许将其放置在更易访问的位置。这种机制减少了带宽采用,允许快速访问,并随后提高了网站的操控性。
当客户端请求静态内容时,伺服器将提供内容的内存版本。在 /etc/nginx/sites-available 产品目录中的虚拟主机文件中添加下列行:
location ~* \.(jpg|jpeg|png |gif|ico |css|js)$ { expires 100d; }此实用性将从上次浏览器访问时间起将文件内存 100 天。
8. 在 NGINX 中启用打开文件内存
您还能在 NGINX 命令行中采用打开文件内存模块来增强其操控性。该指令允许将文件描述符和经常访问的文件内存到伺服器。
在命令行的http部分添加下列行以启用打开文件内存:
http{ open_file_cachemax= 1024inactive= 10s; open_file_cache_valid60s; open_file_cache_min_uses2; open_file_cache_errorson; }通过修改其命令行充分运用 NGINX
更改实用性时要遵循的两个好习惯是一次处理两个增设并对其进行测试。假如有效,请转到下两个增设。假如不是,您能随时将实用性更改回预设值。
通过修改 NGINX 命令行(如 nginx.conf 和虚拟主机文件)中实用性的模块,您能熟知 NGINX 以获最佳操控性。
感谢 Linux迷 www.linuxmi.com 的精彩分享。
OK,这就是本文的内容。假如还有甚么疑问,请在下面的评论区告诉他们。
须要Linux 精美艺术壁纸的朋友请加小编微信 linuxgs (口令壁纸)。
来自:Linux迷
镜像:https://www.linuxmi.com/linux-nginx-performance.html
关注他们
Linux公社
关注 Linux公社,添加“ 星标 ”
合作联系:[email protected]