SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【php】AWS SDK for PHP はpharとpharではないのどちらを使うとよい?

問題

AWS SDK for 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

関連するメモ

コメント