ホームページ > バックエンド開発 > PHPチュートリアル > PHP の静的メソッドがメモリを消費し始めるのはいつですか?異なる PHP プロセスは静的メソッドを共有しますか?

PHP の静的メソッドがメモリを消費し始めるのはいつですか?異なる PHP プロセスは静的メソッドを共有しますか?

WBOY
リリース: 2016-09-15 11:15:07
オリジナル
1592 人が閲覧しました

PHP の静的メソッドがメモリを消費し始めるのはいつですか?

たとえばクラス

リーリー

次の状況を考慮しました:

  1. PHP コードを実行すると、静的メソッドが含まれているかどうかに関係なくスキャンされます。、それらは非効率すぎるため、使用すべきではありません。

  2. 私がinclude 'Test.php'するとき、クラスをスキャンして静的メソッドをメモリにロードしますか?この時点で、すべてのメソッドがメモリにロードされる必要があります。

  3. 2不成立,则是否在调用方法Test::test1();がメモリにロードされる場合、この時点でロードされる場合、現在のメソッドのみがロードされますか、それとも現在のクラスのすべての静的メソッドがロードされますか?


異なる PHP プロセスは静的メソッドを共有しますか?

以下に示すように

PHP の静的メソッドがメモリを消費し始めるのはいつですか?異なる PHP プロセスは静的メソッドを共有しますか?

Nginx と Php-fpm のプロセスとスレッドについて話したマスターは次のとおりです: https://segmentfault.com/q/10...

この場合、1 つの Php-fpm プロセスが 1 つのクライアントにサービスを提供しますが、同時実行性が高すぎる場合、多くのプロセスが存在することになります。プロセス通信に関しては、異なるクライアントからのリクエストは異なるプロセスに属しており、相互に影響を与えるべきではありません。ただし、クライアントが複数のリクエストを持っている場合は、静的メソッドのキャッシュが存在する必要があります。これはブロッキング シングル スレッド モデルであるため、各リクエストは実行を開始する前に最後のリクエストが完了するまで待機する必要があります。この時点で静的メソッドのキャッシュはクリアされるのでしょうか、それとも保存し続ける必要がありますか?オフにすると、静的メソッドは共有されなくなります。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート