Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのキャパシティ プランニングを最適化する

WBOY
リリース: 2023-10-12 10:56:01
オリジナル
963 人が閲覧しました

使用Docker Compose、Nginx和MariaDB优化PHP应用程序的容量规划

Docker Compose、Nginx、MariaDB を使用した PHP アプリケーションのキャパシティ プランニングの最適化

インターネットが発展し続けるにつれて、開発言語として PHP を使用するアプリケーションがますます増えています。ただし、PHP アプリケーションは、同時実行性が高くデータ量が大きい場合、パフォーマンスのボトルネックに遭遇することがよくあります。 PHP アプリケーションのパフォーマンスと容量を向上させるために、Docker Compose、Nginx、MariaDB を組み合わせて容量計画と最適化を行うことができます。

Docker Compose は、複数コンテナー アプリケーションの定義と管理に使用できる Docker 用のツールです。 Docker Compose を使用すると、PHP、Nginx、MariaDB などの複数のコンテナーを 1 つのファイルで定義してデプロイできます。このようにして、PHP アプリケーションの開発および運用環境を迅速かつ簡単にセットアップできます。

Nginx は、リバース プロキシ サーバーの機能も備えた高性能 HTTP サーバーです。 Nginx を PHP アプリケーションのフロントエンド サーバーとして使用すると、ロード バランシング、静的リソース キャッシュ、HTTPS サポートなどの機能を実現でき、PHP アプリケーションのパフォーマンスと容量が向上します。

MariaDB は、オープンソースのリレーショナル データベース管理システムであり、MySQL のブランチです。 MariaDB を使用すると、データの保存、読み取り、更新など、PHP アプリケーションのデータベース関連タスクを処理できます。 MariaDB は、高性能、高信頼性、拡張性という特徴を持ち、PHP アプリケーションの容量計画と最適化において重要な役割を果たします。

以下では、単純な PHP アプリケーションを例として、容量計画と最適化に Docker Compose、Nginx、MariaDB を使用する具体的な手順とコード例を示します。

まず、docker-compose.yml という名前のファイルを作成して、PHP、Nginx、MariaDB コンテナーの構成とデプロイメントを定義および管理します。 docker-compose.yml ファイルの例の内容を次に示します。

version: '3'
services:
  web:
    build: .
    restart: always
    ports:
      - 80:80
    volumes:
      - ./app:/var/www/html
  db:
    image: mariadb
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=example
      - MYSQL_DATABASE=example
      - MYSQL_USER=example
      - MYSQL_PASSWORD=example
ログイン後にコピー

上記の例では、web という名前のサービスが、PHP アプリケーションを実行するコンテナに対して定義されています。 build フィールドはコンテナの構築に使用される Dockerfile を指定し、restart フィールドはコンテナの再起動戦略を指定し、ports フィールドはコンテナとホスト間のポート マッピング関係を指定し、volumes フィールドはコンテナ間のディレクトリ マッピング関係を指定します。そしてホスト。

次に、PHP アプリケーション コンテナーを構築するための構成と依存関係を定義する Dockerfile というファイルを作成します。以下は、Dockerfile ファイルの内容の例です。

FROM php:7.4-apache
COPY src/ /var/www/html/
ログイン後にコピー

上記の例では、基本イメージ php:7.4-apache が、PHP アプリケーション コンテナを構築するための基本環境として使用され、COPY 命令を使用して、ローカルの src ディレクトリに PHP アプリケーション ファイルをコンテナ内の /var/www/html ディレクトリにコピーします。

次に、default.conf という名前のファイルを作成して、Nginx コンテナーの構成を定義します。以下は、default.conf ファイルの例の内容です:

server {
    listen 80;
    server_name localhost;
    root /var/www/html;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ .php$ {
        try_files $uri =404;
        fastcgi_pass web:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PHP_VALUE "error_log=/var/log/nginx/php_errors.log";
        include fastcgi_params;
    }

    location ~ /.ht {
        deny all;
    }
}
ログイン後にコピー

上記の例では、server という名前のサーバー ブロックが定義され、ポート、ドメイン名、ルート ディレクトリ、Nginx がリッスンするリクエストを処理するためのルールが指定されています。の上。このうち、location / ブロックは静的リソースと PHP リクエストの処理に使用され、location ~ .php$ ブロックは PHP スクリプトの実行の処理に使用されます。

最後に、コマンド ラインで docker-compose.yml ファイルがあるディレクトリに切り替えて次のコマンドを実行することで、PHP、Nginx、MariaDB コンテナーの実行を開始および管理できます。

docker-compose up -d
ログイン後にコピー
上記の手順とコード例を通じて、Docker Compose、Nginx、MariaDB で最適化された PHP アプリケーションのキャパシティ プランニングと最適化環境を迅速かつ簡単に構築できます。このようにして、PHP アプリケーションのパフォーマンスと容量が大幅に向上し、高い同時実行性と大量のデータ量の要件にうまく対応できるようになります。

要約すると、容量計画と最適化のために Docker Compose、Nginx、MariaDB を組み合わせることで、PHP アプリケーションのパフォーマンスと容量を効果的に向上させることができます。実際のアプリケーションでは、特定のニーズと実際の条件に応じて構成の調整と最適化を行うことで、PHP アプリケーションのパフォーマンスと容量をさらに向上させることができます。

以上がDocker Compose、Nginx、MariaDB を使用して PHP アプリケーションのキャパシティ プランニングを最適化するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!