ホームページ  >  記事  >  バックエンド開発  >  Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのネットワーク パフォーマンスを最適化する

Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのネットワーク パフォーマンスを最適化する

WBOY
WBOYオリジナル
2023-10-12 12:49:41771ブラウズ

使用Docker Compose、Nginx和MariaDB优化PHP应用程序的网络性能

Docker Compose、Nginx、MariaDB を使用して PHP アプリケーションのネットワーク パフォーマンスを最適化する

はじめに:
今日のインターネット時代では、ネットワーク パフォーマンスは Web の安定性にとって重要です。アプリケーション 安全性と応答性は非常に重要です。 PHP アプリケーションのネットワーク パフォーマンスを向上させるには、コンテナ化テクノロジ Docker Compose、効率的な Web サーバー Nginx、安定したデータベース MariaDB を使用できます。この記事では、これらのツールを使用して PHP アプリケーションのネットワーク パフォーマンスを最適化する方法を詳しく紹介し、具体的なコード例を示します。

  1. Docker と Docker Compose のインストール
    まず、Docker と Docker Compose をインストールする必要があります。 Docker は、アプリケーションの作成、デプロイ、管理を容易にするオープンソースのコンテナ化プラットフォームです。 Docker Compose は、複数の Docker コンテナーを定義および管理するために使用される Docker 補助ツールです。
    詳しいインストール手順については、Docker および Docker Compose の公式ドキュメントを参照してください。
  2. Docker Compose ファイルを作成する
    次に、アプリケーションに必要なコンテナとサービスを定義する Docker Compose ファイルを作成する必要があります。この例では、Web サーバーとして Nginx、データベースとして MariaDB、PHP インタープリターとして PHP-FPM を使用します。

まず、docker-compose.yml というファイルを作成し、次の内容を追加します。

version: '3'

services:
  nginx:
    image: nginx:latest
    ports:
      - 80:80
    volumes:
      - ./nginx:/etc/nginx/conf.d
      - ./html:/var/www/html
    depends_on:
      - php
  php:
    image: php:7.4-fpm
    volumes:
      - ./html:/var/www/html
  mariadb:
    image: mariadb:latest
    ports:
      - 3306:3306
    environment:
      - MYSQL_ROOT_PASSWORD=root
      - MYSQL_DATABASE=myapp
      - MYSQL_USER=myuser
      - MYSQL_PASSWORD=mypassword
    volumes:
      - ./mysql:/var/lib/mysql

上記の構成ファイルは、nginx、php、mariadb の 3 つのサービスを定義します。 Nginx サービスはホストのポート 80 をリッスンし、リクエストを PHP コンテナーにプロキシします。 PHP コンテナは PHP-FPM を実行し、Web サイトのファイルを /var/www/html ディレクトリにマウントします。 MariaDB サービスはホストのポート 3306 をリッスンし、データベース ファイルをその /var/lib/mysql ディレクトリにマウントします。

  1. Nginx サーバーの構成
    Docker Compose ファイルを作成した後、Nginx の仮想ホストを構成する必要があります。この例では、default.conf という Nginx 構成ファイルを使用します。 nginx/default.conf というファイルを作成し、次の内容を設定します。
server {
    listen 80;
    server_name localhost;
    root /var/www/html/public;

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

    location ~ .php$ {
        include fastcgi_params;
        fastcgi_index index.php;
        fastcgi_pass php:9000;
        fastcgi_param SCRIPT_FILENAME /var/www/html/public/$fastcgi_script_name;
    }
}

上記の構成ファイルは、PHP コンテナー (FPM) で実行されている PHP へのすべてのリクエストをプロキシする仮想ホストを定義します。また、PHP ファイルの処理方法とパスも設定します。

  1. PHP アプリケーションの作成
    次に、html ディレクトリに PHP アプリケーションを作成する必要があります。この例では、単純な「Hello, World!」アプリケーションを使用します。
    index.php という名前のファイルを html ディレクトリに作成し、次の内容を入力します。
<?php
echo "Hello, World!";
  1. コンテナを開始します。
    上記の手順を完了すると、次の内容を使用できます。 Docker Compose コマンドによりコンテナが起動されます。ターミナルで次のコマンドを実行します。
docker-compose up -d

これにより、Nginx、PHP、MariaDB コンテナが起動され、それらが接続されます。

  1. PHP アプリケーションのテスト
    これで、ブラウザで http://localhost にアクセスできるようになり、「Hello, World!」の出力が表示されるはずです。これは、PHP アプリケーションが正しく実行されており、最適化された Nginx と MariaDB がパフォーマンスを提供していることを示しています。

結論:
Docker Compose、Nginx、Maridb を使用することで、PHP アプリケーションのネットワーク パフォーマンスを最適化することに成功しました。 Docker Compose は複数のコンテナを簡単に定義して管理するのに役立ち、Nginx は効率的な Web サーバーを提供し、MariaDB は安定した信頼性の高いデータベースを提供します。これらのツールを使用すると、PHP アプリケーションの応答性と安定性を大幅に向上させることができます。

この記事が、読者が Docker Compose、Nginx、Maridb を使用して PHP アプリケーションのネットワーク パフォーマンスを最適化する方法を理解し、実用的なコード例を提供するのに役立つことを願っています。実際のアプリケーションでは、特定のニーズに応じて適切な調整と最適化を行ってください。

以上がDocker Compose、Nginx、MariaDB を使用して PHP アプリケーションのネットワーク パフォーマンスを最適化するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。