Shin x Blog

PHPをメインにWebシステムを開発してます。Webシステム開発チームの技術サポートも行っています。

「PHP ユーザのための OpenTelemetry 入門」を PHP カンファレンス 2024 で発表しました

2024/12/23 にお馴染み PIO で開催された PHP カンファレンス 2024 にて、「PHP ユーザのための OpenTelemetry 入門」を発表してきました。 発表資料 PHP アプリケーションを OpenTelemetry で計装するための第一歩として、オブザーバリティやテレメトリデー…

PHP アプリケーションのトレース計装ではじめる OpenTelemetry 入門

OpenTelemetry を利用して PHP アプリケーションのテレメトリデータを計装する方法をまとめました。 本エントリのコードは下記で公開しています。 github.com OpenTelemetry とは 用語 PHP アプリケーションのマニュアル計装(手動計装) 構成 OTel Collecto…

OPcache オペコードキャッシュの仕組み

php

本エントリでは、PHP の内部実装(php-src)から OPcache のオペコードキャッシュの仕組みを見ていきます。 OPcache にはいくつかの機能がありますが、ここでは共有メモリへのオペコードキャッシュと preload が対象です。ファイルベースのキャッシュと JIT …

PHP に新しい演算子を実装するチュートリアル

php

PHP に新しい演算子を実装するチュートリアルの紹介です。 www.sitepoint.com 新たなトークン、AST ノード、オペコードを実装するための修正ポイントや、PHP コードからオペコード実行までの実装を(部分的ですが)手軽に知ることできる良い内容でした。 こ…

PHP のオートロードはいつ実行されるか

php

下記エントリを書いたところ、ではいつオートローダによって PHP ファイルが読み込まれるのかという質問をいただきました。 blog.shin1x1.com このエントリでは、オートロードの仕組みを交えて、どのようなケースでオートローダが実行されるかをまとめました…

php-fpm リクエストサイクル

php

php-fpm がリクエストを処理しているサイクルをざっくりとまとめました。 php-fpm ワーカープロセスの生成 リクエストループ 1) リクエスト接続待ち listen_socket の生成 FastCGI リクエスト 2) リクエスト開始処理 実行PHPファイルパスの決定 スーパーグロ…

use 文は PHP ファイルを読み込まない

php

PHP の use 文では、クラス名や関数名、定数、名前空間などのエイリアスを設定できます。