ホームページ バックエンド開発 PHPチュートリアル Web サーバー nginx と apache_PHP のチュートリアル

Web サーバー nginx と apache_PHP のチュートリアル

Jul 13, 2016 pm 05:16 PM
apache nginx php web そして コンテンツ 準備する サーバ

最近php Webサーバーを構築する予定です。以下の内容は参考になります。

1. Apache に対する nginx の利点:
軽量、Web サービスとしても機能し、Apache よりもメモリとリソースの使用量が少ない
同時実行防止、nginx はリクエストを非同期かつノンブロッキングに処理します。 Apache がブロックしている間 、高同時実行下では、nginx は低リソース消費と高いパフォーマンスを維持できます
高度にモジュール化された設計で、モジュールの作成は比較的簡単です
コミュニティが活発で、さまざまな高性能モジュールが迅速に作成されます
nginx に対する Apache の利点:

書き換え、nginxの書き換えより強力

動的ページ

モジュールが非常に多く、基本的に考えられるものはすべて見つかります
バグは少ないですが、nginxには比較的多くのバグがあります

超安定

一般的に、パフォーマンスを必要とするWebサービスはnginxを使用します。パフォーマンスは必要なく、安定性だけが必要な場合は、Apache を使用してください。後者のさまざまな機能モジュールは前者よりも適切に実装されており、たとえば ssl モジュールは前者よりも優れており、設定可能な項目が増えています。ここで注意すべき点の 1 つは、epoll (freebsd 上の kqueue) ネットワーク IO モデルが nginx の高い処理パフォーマンスの根本的な理由ですが、すべての状況で epoll が勝者になるわけではなく、少数のファイルのみを提供する静的サービスの場合は、Apache の選択モデルが使用される可能性があります。 epoll よりもパフォーマンスが高くなります。もちろん、これはネットワーク IO モデルの原則に基づいた単なる仮定であり、それについて話す前に実際のアプリケーションをテストする必要があります。

2. Web サーバーとして: Apache と比較して、Nginx は使用するリソースが少なく、より多くの同時接続をサポートし、より高い効率を反映するため、仮想ホストプロバイダーで特に人気があります。同時接続数が多い場合、Nginx は Apache サーバーに代わる良い選択肢です。Nginx は、米国の仮想ホスト ビジネス オーナーによく選ばれるソフトウェア プラットフォームの 1 つであり、最大 50,000 の同時接続の応答をサポートできます。ありがとうございます。Nginx は開発モデルとして epoll と kqueue を選択してくれました
負荷分散サーバーとしての Nginx: Nginx は内部で Rails と PHP プログラムを直接サポートして外部サービスを提供するだけでなく、HTTP プロキシ サーバーとして外部サービスもサポートします。 Nginx は書き込みに C を使用し、システム リソースのオーバーヘッドと CPU 使用効率の両方が Perlbal よりも優れています。
メール プロキシ サーバーとしても、Nginx は非常に優れたメール プロキシ サーバーです (この製品を開発した最初の目的の 1 つは、メール プロキシ サーバーとしても機能します)、Last.fm は成功した素晴らしい使用体験を説明しています
Nginx は、インストールが非常に簡単で、非常に簡潔な設定ファイル (Perl 構文もサポートします) を備えたサーバーです。バグが非常に少ない: Nginx は特に起動が簡単で、7*24 間中断することなく実行でき、数か月間実行しても再起動する必要はありません。サービスを中断することなくソフトウェア バージョンをアップグレードすることもできます。

3. Nginx の構成はシンプルですが、Apache は複雑です
Nginx の静的処理パフォーマンスは Apache の 3 倍以上です
Apache の PHP サポートは比較的シンプルですが、Nginx は他のバックエンドと併用する必要があります
Apache には Nginx よりも多くのコンポーネントがあります
現在、Nginx は Web サーバーの第一の選択肢です

4. 主要な違いは、Apache が同期マルチプロセス モデルであり、1 つの接続が 1 つのプロセスに対応することです。複数の接続 (10,000 レベル) を 1 つのプロセスに対応させることができます

5.

nginx は静的ファイルの処理に優れており、メモリ消費量も少ないです。しかし、Apache が依然として主流であり、多くの機能を備えていることは間違いありません。ニーズを満たしている場合は、nginx を使用するのがより経済的な方法です

apache にはマルチコア処理負荷をサポートしていないという欠点があります。フロントエンドとして nginx を使用し、バックエンドとして apache を使用することをお勧めします。大規模なウェブサイトの場合は、nginx の自己生成クラスター機能を使用することをお勧めします

6. 個人的な過去の使用状況から判断すると、nginx の負荷容量は Apache の負荷容量よりもはるかに高いです。最新のサーバーもnginxを使用しています。さらに、nginx の設定を変更した後、Apache が再起動されると、設定に問題があるかどうかをテストできなくなり、変更するときは非常に注意します。多くのクラスター サイトがあり、フロントエンドの nginx は同時実行性が高く、バックエンドの Apache クラスターとの連携も良好です。


7. nginx は動的リクエストの処理には役に立ちません。通常、動的リクエストは Apache によって実行される必要があり、nginx は静的リクエストとリバースリクエストにのみ適しています。

8. 私の個人的な経験から言えば、nginx は非常に優れた負荷パフォーマンスを備えた非常に優れたフロントエンド サーバーです。Laoben で nginx を開き、Webbench を使用して 10,000 の静的ファイル リクエストをシミュレートするのは簡単です。 Apache は php などの言語のサポートが充実しています。また、Apache には強力なサポート ネットワークがあり、Nginx よりも長期間開発されているのには主に 2 つの理由があります。 Apache よりも優れている: 1. Nginx 自体はリバース プロキシ サーバーです。 2. Nginx は 7 層の負荷分散をサポートします。もちろん、Nginx は Apache よりも高い同時実行性をサポートする可能性がありますが、NetCraft の統計によると、2011 年 4 月の統計では、Apache が依然として重要です。 62.71% に対して、Nginx は 7.35% です。一般的に、Aapche は依然としてほとんどの企業にとって第一の選択肢です。その成熟したテクノロジーと開発コミュニティはすでに非常に優れたパフォーマンスを備えているからです。

10. Web サーバーのニーズによって選択が決まります。
静的ファイル処理、PHP-CGIサポート、リバースプロキシ機能、フロントエンドキャッシュ、接続維持など、ほとんどの場合、nginxはAPACHEよりも優れています。 Apache+PHP (プリフォーク) モードでは、PHP の処理が遅い場合やフロントエンドの負荷が高い場合、Apache プロセスの数が急増し、サービス妨害が発生しやすくなります。
11. nginx lua モジュールをご覧ください: https://github.com/chaoslaw... Apache には nginx より多くのモジュールがあり、Apache で直接実装できます。人気、なぜ?ほとんどの人は、nginx に更新したり、新しいことを学ぶのが面倒です

12. nginx の場合、その設定ファイルが非常に簡潔で、通常の設定により多くのことがシンプルかつ効率的になり、使用するリソースが少なくなり、強力なプロキシが備わっていることが気に入っています。フロントエンド応答サーバーとして非常に適しています

13. Apache は処理ダイナミクスの点で優れており、書き換えが頻繁に行われる場合は Apache が最適です

http://www.cnblogs.com/roucheng/

http://www.bkjia.com/PHPjc/626664.html

www.bkjia.com

http://www.bkjia.com/PHPjc/626664.html技術記事最近PHP Webサーバーを構築しようと考えています。以下の内容は参考になります。 1. Apache に対する nginx の利点: 軽量、Web サービスとしても機能し、Apache よりもメモリとリソースの消費が少なく、マージに強い...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPの目的:動的なWebサイトの構築 PHPの目的:動的なWebサイトの構築 Apr 15, 2025 am 12:18 AM

PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

PHPおよびPython:コードの例と比較 PHPおよびPython:コードの例と比較 Apr 15, 2025 am 12:07 AM

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

PHP:データベースとサーバー側のロジックの処理 PHP:データベースとサーバー側のロジックの処理 Apr 15, 2025 am 12:15 AM

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

Nginxが開始されるかどうかを確認する方法 Nginxが開始されるかどうかを確認する方法 Apr 14, 2025 pm 01:03 PM

nginxが開始されるかどうかを確認する方法:1。コマンドラインを使用します:SystemCTLステータスnginx(Linux/unix)、netstat -ano | FindStr 80(Windows); 2。ポート80が開いているかどうかを確認します。 3.システムログのnginx起動メッセージを確認します。 4. Nagios、Zabbix、Icingaなどのサードパーティツールを使用します。

PHPおよびPython:さまざまなパラダイムが説明されています PHPおよびPython:さまざまなパラダイムが説明されています Apr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

Dockerコンテナの名前を確認する方法 Dockerコンテナの名前を確認する方法 Apr 15, 2025 pm 12:21 PM

すべてのコンテナ(Docker PS)をリストする手順に従って、Dockerコンテナ名を照会できます。コンテナリストをフィルタリングします(GREPコマンドを使用)。コンテナ名(「名前」列にあります)を取得します。

PHP:サーバー側のスクリプト言語の紹介 PHP:サーバー側のスクリプト言語の紹介 Apr 16, 2025 am 12:18 AM

PHPは、動的なWeb開発およびサーバー側のアプリケーションに使用されるサーバー側のスクリプト言語です。 1.PHPは、編集を必要とせず、迅速な発展に適した解釈言語です。 2。PHPコードはHTMLに組み込まれているため、Webページの開発が簡単になりました。 3。PHPプロセスサーバー側のロジック、HTML出力を生成し、ユーザーの相互作用とデータ処理をサポートします。 4。PHPは、データベースと対話し、プロセスフォームの送信、サーバー側のタスクを実行できます。

Windowsでnginxを構成する方法 Windowsでnginxを構成する方法 Apr 14, 2025 pm 12:57 PM

Windowsでnginxを構成する方法は? nginxをインストールし、仮想ホスト構成を作成します。メイン構成ファイルを変更し、仮想ホスト構成を含めます。 nginxを起動またはリロードします。構成をテストし、Webサイトを表示します。 SSLを選択的に有効にし、SSL証明書を構成します。ファイアウォールを選択的に設定して、ポート80および443のトラフィックを許可します。

See all articles