php における nts と ts の違い: ts はスレッド セーフを意味し、マルチスレッド アクセスにはロック メカニズムが使用されます。1 つのスレッドがこのクラスの特定のデータにアクセスするとき、他のスレッドは同時にそのデータにアクセスできません。 nts は非スレッド セーフを意味し、スレッド アクセス保護は提供されませんが、複数のスレッドが同じデータを同時に操作できます。
この記事の動作環境: Windows 10 システム、PHP バージョン 7.1、Dell G3 コンピューター。
php の nts と ts の違いは何ですか
PHP 開発環境および運用環境をセットアップするプロセスでは、PHP 言語パーサーをインストールする必要があります。公式ではスレッドセーフ(TS)版と非スレッドセーフ(NTS)版の2種類が提供されていますが、開発環境と実際の本番環境が異なる場合もあるので、対応するものをインストールするかどうかも選択する必要があります。 PHPのバージョン。
今後の参考のためにここにメモを記録してください...
1. はじめに
TS:
TS (Thread-Safety) とは、スレッド セーフの意味です。複数のスレッドからアクセスされる場合、ロック機構が採用されています。スレッドがこのクラスの特定のデータにアクセスすると、そのデータはロックされて保護され、他のスレッドはアクセスできなくなります。データにアクセスした後は、スレッドが読み取りを完了するまで、他のスレッドはそのデータにアクセスして使用することができません。データの不整合やデータ汚染が発生しないという利点がありますが、NTS よりも時間がかかります。
PHP が ISAPI モード (Apache で一般的に使用される) でロードされる場合は、TS バージョンを選択します。
NTS:
NTS (None-Thread Safe) はスレッドセーフではなく、データ アクセス保護を提供しません。複数のスレッドが同じように動作する可能性があります。この場合、データの混乱(ダーティデータ)が発生しやすく、一般的な演算の実行時間はTSに比べて短くなります。
PHP がロードされ、FAST-CGI モードで実行される場合は、パフォーマンスを向上させるために TNS バージョンを選択してください;
ISAPI:
ISAPI (インターネット サーバー)アプリケーション プログラミング インターフェイス) は、通常、http サーバーによってロードされ、サーバー モジュールの形式で実行されることを指します。これは Microsoft によって提案されたため、Win プラットフォーム (Win [fast CGI] 下の Apache や iis など) でのみ実行できます。モードはより安定しています] 一方、Linux 上の php は Apache モジュール (一般的な方法) または php-fpm (この方法は NGINX PHP 操作により適しています) として実行されます。
CGI:
cgi (Common Gateway Interface): HTTP サーバーがクライアント マシン上のプログラムと「対話」するためのツール。サーバーと通信できるバックエンド言語。現時点では、PHP は独立したプログラムとして実行されており、メモリを消費するという特徴があります。
FAST CGI:
fast CGI は長期間有効な CGI です。常に実行できます。アクティブ化されている限り、毎回実行されるわけではありません。新しいプロセスをフォークするには時間がかかります。このメソッドは、言語に依存せず、スケーラブルなアーキテクチャの CGI オープン拡張機能であり、その主な動作は、CGI インタプリタ プロセスをメモリ内に保持し、より高いパフォーマンスを実現することです。
FAST-CGI は、CGI インタプリタの欠点を解決するために Microsoft が提案した改善案です。 Web サーバーにリクエストが送信されると、Web サーバーは常に CGI インタプリタ プロセスをフォークしてリクエストを処理します。処理が完了すると、結果が Web サーバーに返されます。Web サーバーは結果を返し、表示します。ユーザーが同じページを再度リクエストすると、Web サーバーはリクエストを処理するために新しいプロセスをフォークするため、非効率になります (CGI が批判される主な理由)。 FAST-CGI インタプリタを使用すると、リクエスト実行後にプロセスはログアウトされませんが、改善されたプロセスは休止期間に入り、新しいリクエストを受信すると、改善されたプロセスは再び処理可能になります。 FAST-CGI は、CGI と比較してプロセスの繰り返し作成によるリソースの使用量を削減します。
プロセスとスレッド: プロセスには少なくとも 1 つ以上のスレッドがあります。
2.
通常は、Win 環境で PHP Apache の組み合わせを選択し、ISAPI モードで実行します。
Linux には通常 2 つのタイプがあります:
Apache PHP (PHP は通常 Apache のモジュールとして実行されます);
Nginx PHP (phpfast cgi の形式)つまり、php -fpm モードは高同時実行性と高負荷に対して優れたパフォーマンスを発揮するため、多くの Web サイトがこの方法を使用して環境を構築しています。
Nginx は Apache よりも構成がはるかに少ないため、人的エラーの可能性は低くなりますが、Apache は Nginx よりも安定しています。
これまで非常にナンセンスなことを述べてきましたが、重要な点は次のとおりです...
概要:
ISAPI モードで実行する場合は TS スレッドセーフ バージョンを使用してください
FAST を使用する - CGI または PHP-FPM モードで実行している場合は、NTS 非スレッドセーフ バージョンを使用してください
通常、Windows では Apache PHP の場合は TS を選択し、IIS では PHP の場合は TNS を選択します ( fast-cgi)
通常、Linux 上の Apache PHP には TS を選択し、Nginx PHP には TNS を選択します
推奨学習: "PHP ビデオ チュートリアル "
以上がPHPのntsとtsの違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

メモ帳++7.3.1
使いやすく無料のコードエディター

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
