溫馨提示×

如何在LNMP中配置緩存

小樊
45
2025-07-27 08:01:38
欄目: 編程語言

在LNMP(Linux, Nginx, MySQL, PHP)環境中配置緩存可以顯著提高網站的性能。以下是一些常見的緩存配置方法:

1. Nginx 緩存

Nginx 提供了多種緩存機制,包括代理緩存和FastCGI緩存。

代理緩存

  1. 安裝 Nginx 緩存模塊

    sudo apt-get install nginx-extras
    
  2. 配置 Nginx 緩存: 編輯 Nginx 配置文件(通常是 /etc/nginx/nginx.conf/etc/nginx/sites-available/default),添加以下內容:

    http {
        proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=1g inactive=60m use_temp_path=off;
    
        server {
            listen 80;
            server_name example.com;
    
            location / {
                proxy_pass http://backend;
                proxy_cache my_cache;
                proxy_cache_valid 200 302 10m;
                proxy_cache_valid 404 1m;
                add_header X-Proxy-Cache $upstream_cache_status;
            }
        }
    }
    

    解釋:

    • proxy_cache_path:定義緩存路徑和參數。
    • keys_zone:定義緩存區域的名稱和大小。
    • max_size:定義緩存的最大大小。
    • inactive:定義緩存項在不被訪問后多久失效。
    • use_temp_path:是否使用臨時路徑。

FastCGI 緩存

  1. 啟用 FastCGI 緩存: 在 Nginx 配置文件中添加以下內容:

    http {
        fastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=my_fcgi_cache:10m max_size=1g inactive=60m use_temp_path=off;
    
        server {
            listen 80;
            server_name example.com;
    
            location ~ \.php$ {
                fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
                fastcgi_cache my_fcgi_cache;
                fastcgi_cache_valid 200 302 10m;
                fastcgi_cache_valid 404 1m;
                include fastcgi_params;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                fastcgi_param PATH_INFO $fastcgi_path_info;
            }
        }
    }
    

2. PHP 緩存

PHP 提供了多種緩存機制,包括 OPcache 和文件緩存。

OPcache

  1. 安裝 OPcache: 大多數現代 PHP 版本已經內置了 OPcache,無需額外安裝。

  2. 配置 OPcache: 編輯 php.ini 文件(通常是 /etc/php/7.4/cli/php.ini/etc/php/7.4/fpm/php.ini),添加或修改以下內容:

    [opcache]
    opcache.enable=1
    opcache.memory_consumption=128
    opcache.interned_strings_buffer=8
    opcache.max_accelerated_files=4000
    opcache.revalidate_freq=60
    opcache.fast_shutdown=1
    

3. MySQL 緩存

MySQL 提供了查詢緩存和 InnoDB 緩沖池。

查詢緩存

  1. 啟用查詢緩存: 在 MySQL 配置文件(通常是 /etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf)中添加以下內容:

    [mysqld]
    query_cache_type=1
    query_cache_size=64M
    
  2. 重啟 MySQL 服務

    sudo systemctl restart mysql
    

InnoDB 緩沖池

  1. 配置 InnoDB 緩沖池: 在 MySQL 配置文件中添加或修改以下內容:

    [mysqld]
    innodb_buffer_pool_size=1G
    
  2. 重啟 MySQL 服務

    sudo systemctl restart mysql
    

總結

通過以上步驟,你可以在 LNMP 環境中配置多種緩存機制,從而提高網站的性能和響應速度。根據你的具體需求和服務器資源,調整緩存參數以達到最佳效果。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女