PHP クライアント ライブラリは、最小限のコストで Google Ads API とのインタラクションを容易に ユーザー側で構成できますただし パフォーマンスは 統合されています。
こちらのベスト プラクティスのほとんどが適用できます。 すべての言語に対応しています。このガイドでは、PHP 固有のものについて説明します。
Protobuf の実装
Protobuf は gRPC によって使用されます リクエストメッセージとレスポンスメッセージには Google Ads API を使用できます2 つの実装が使用できますが、C で記述された実装の方がパフォーマンスが優れています。
詳細については、Protobuf ガイドをご覧ください。
PHP インタープリタの動作モード
PHP は汎用性の高いスクリプト言語であり、使用状況に応じて多くのオペレーション モードがあります。PHP CGI(Common Gateway Interface)は、実行間でリソースを共有できるという大きなメリットがあります。
PHP のバージョン
新しい PHP バージョンに定期的にアップグレードすることをおすすめします。 全体的なパフォーマンスが向上しますサポートされている PHP バージョンのリスト。
使用されていない Google Ads API バージョン
クライアント ライブラリのすべてのバージョンは、複数の Google 広告 API バージョンをサポートしています。クライアント ライブラリでサポートされている Google Ads API のバージョンごとに、そのバージョン専用のパッケージがあります。
使用されていない Google Ads API のバージョン専用のパッケージは、クライアント ライブラリから安全に削除できます。実行を高速化したり、メモリのフットプリントを削減したりするために有用なため、クライアント ライブラリには、プログラムで実行できるユーティリティが用意されています。
例
最新のライブラリのみを使用するクライアント ライブラリを
API バージョン: v18
。未使用の
API バージョン: v17
と
v16
。
プロジェクトの composer.json
ファイルで、Composer スクリプト(名前:
remove-google-ads-api-version-support
)で提供されるユーティリティを利用します。
クライアント ライブラリ、
ApiVersionSupport
:
"scripts": {
"remove-google-ads-api-version-support": [
"Google\\Ads\\GoogleAds\\Util\\ApiVersionSupport::remove"
]
}
次に、バージョン番号をパラメータとして Composer スクリプトを使用し、 ステータス メッセージの例:
# Change the current directory to the project directory.
cd /path/to/the/project
# Install the project.
composer install
# Output the vendor folder size and the list of Google Ads API versions that are
# supported before removing support for Google Ads API versions.
echo "# Supported Google Ads API versions:"
find ./vendor/googleads/google-ads-php/src/Google/Ads/GoogleAds/V* -maxdepth 0 | grep -o '..$'
echo "# Vendor folder size:"
du -sh ./vendor
# Use the Composer script to remove the unused versions v16 and v17 of the Google Ads API.
echo "# Removing support..."
composer run-script remove-google-ads-api-version-support -- 16 17
# Output the vendor folder size and the list of Google Ads API versions that are
# supported after removing support for Google Ads API versions.
echo "# Supported Google Ads API versions:"
find ./vendor/googleads/google-ads-php/src/Google/Ads/GoogleAds/V* -maxdepth 0 | grep -o '..$'
echo "# Vendor folder size:"
du -sh ./vendor
以下の実行出力例では、ファイルサイズが 50 M 縮小され、残りのサポート対象バージョンは V18
のみであることがわかります。
# Supported Google Ads API versions:
V16
V17
V18
# Vendor folder size:
110M ./vendor
# Removing support...
> Google\Ads\GoogleAds\Util\ApiVersionSupport::remove
Removing support for the version 16 of Google Ads API...
Done
Removing support for the version 17 of Google Ads API...
Done
# Supported Google Ads API versions:
V18
# Vendor folder size:
60M ./vendor
開発環境と本番環境
PHP はインタープリタ言語です。つまり、まず命令をコンパイルしてから実行します。これは通常 開発中には実行時にソースが変更されることが多いため、有利である それほど重要ではありませんただし、本番環境では安定性とパフォーマンスが主な懸念事項となるため、その逆になります。
キャッシュ
キャッシュは一般的で、事前コンパイルされたスクリプト インストラクションを保存することでパフォーマンスと安定性を向上させるため、強く推奨されます。
最もよく使用されるソリューションは OPcache で、デフォルトで使用できます。
オートチャージ
オートチャージが一般的 読み込みによるパフォーマンスの向上と安定性の向上を クラスに関するプリコンパイルされた情報が含まれます。
PHP クライアント ライブラリは PSR-4 に準拠
定義を提供しており、インフラストラクチャの
composer.json
表示されます。その後、Composer の専用オプション(--optimize-autoloader
や --classmap-authoritative
など)をすぐに使用できます。
ロギング
ロガーを ERROR
などの高レベルに設定すると、実行時間のオーバーヘッドとメモリ消費を削減できます。
詳しくは、ロギング ガイドをご覧ください。
デバッグとプロファイリング
デバッガとプロファイラ ツールは、通常提供されているため、無効にすることをおすすめします。 実行時間のオーバーヘッドが生じます
プリロード
PHP 7.4 以降では、OPcache プリロードを使用してスクリプトをメモリにプリロードできるため、通常のキャッシュよりもさらに一歩進んだことができます。
この機能を使用するにはスクリプトを設計する必要がありますが、OPcache プリロードを実装する一般的な方法がないため、PHP クライアント ライブラリはこれを使用しません。また、メモリ使用量とパフォーマンスの向上のトレードオフは、特定のプロジェクトと実行に固有のものであるためです。