【php】AWS SDK for PHP はpharとpharではないのどちらを使うとよい?
問題
AWS SDK for PHP を使おうと思うのですが、以下のインストール方法があります。どちらを使うとよいですか。
- aws.phar。ひとかたまりのファイル。
- composerで、または zip版を解凍したバラバラのphpファイルのもの。
答え
aws.phar は1ファイルのみに固められていて、約30MBほどあります。
ファイル1個なのが管理が楽で、使うにもお手軽な感じですが、 require 'aws.phar';
でプロセスのメモリ使用量が30MBほど増えます。
composer や zip版を解凍したものは、オートロードで必要なものを読むので、最終的に必要なメモリ使用量は使用する機能によります。例えばDynamoDBにちょっと問い合わせするため use Aws\DynamoDb\DynamoDbClient;
するだけなら10MB使用といった感じです。
phar版を使うかどうかは、状況に応じて判断でよいと思います。
単発の利用。
バッチ処理など。
AWSのAPIを使いたいだけで、ほかにライブラリは必要ない。
30MB程度のメモリ消費は特に問題ない
→ require ‘aws.phar ‘;
Webサイトなどでメモリ消費は少ないほうがうれしい。
composer を入れていない。
→ zip版を解凍して、require ‘aws-autoloader.php’;
システムの一部として使いたい。すでにcomposerでライブラリの管理をしている。
無駄にメモリを消費したくない。
→ composer require aws/aws-sdk-php
コメント