Category Archives: Amazon

AWS SDK for PHP のパフォーマンスを改善するたった3つのこと

http://qiita.com/iwai/items/c712316755b13d106da5

AWS SDK入れるならやっておきたいですね。

Google App EngineのSDK入れる時のも調査しておkないあと。。

AWS EC2で nginx php55-fpm phalcon を動かす。

AWS EC2で nginx & php55-fpm 上で phalcon を動かしてみた。本当はphp5.6が入れたいんですが・・。手間が2段階ぐらい上がっちゃうんですよね。

まず、nginxをインストール。

# yum install nginx

php用のリポジトリを追加。

# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

remiのphp5.5を有効にしておきましょう。

# vi /etc/yum.repos.d/remi.repo

[remi]
name=Les RPM de remi pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/remi/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/remi/mirror
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

[remi-php55]
name=Les RPM de remi de PHP 5.5 pour Enterprise Linux 6 - $basearch
#baseurl=http://rpms.famillecollet.com/enterprise/6/php55/$basearch/
mirrorlist=http://rpms.famillecollet.com/enterprise/6/php55/mirror
# WARNING: If you enable this repository, you must also enable "remi"
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-remi

[remi]と[remi-php55]のenableを1に。

で、php5.5系をどどっとインストールします。

# yum install php55 php55-devel php55-fpm php55-mbstring php55-mcrypt php55-opcache php55-pdo

phalconの為のgccとgitもついでに。

# yum install gcc git

phalconをダウンロード。

$ git clone git://github.com/phalcon/cphalcon.git

でインストール。

cd cphalcon/build/
# ./install

phalconの設定ファイルを作りましょう。

# vi /etc/php-5.5.d/phalcon.ini

extension=phalcon.so

それでは順番に起動していきます。

# /etc/init.d/php-fpm start
# /etc/init.d/nginx start

特にエラーもなければ、自動起動にしておきましょう。

# /sbin/chkconfig nginx on
# /sbin/chkconfig php-fpm on

後は、nginxの設定をすればとりあえず動くところまではいったと思います。

新しくなったamazon APIにアクセス

Amazon APIを叩きまくってた日々が懐かしく思われる私ですが、色々と仕様が変わってからさっぱりでした。
ので、ちょっと調べてみたところ、このサイトが非常に参考になりました。

Knockin’on TechLog » Blog Archive » amazon API (AWS) を試す PHP.

まあ、所謂2leggedOAuthな感じですね。

上記サイト、非常に参考になったのですが、実行して出来たURIを叩いてみると

Mozilla Firefox  Vimperator

必要なパラメータが無い、と怒られます。AssociateTagなど、と指定されているので、これが良く忘れられがちなんでしょうね。というかこれが最近必須になったのか。

上記サイトのサンプルプログラムに


// 検索するキーワード 入力から取得 
$params['Keywords'] = "php";
// AssociateTagを追加。
$params['AssociateTag'] = 'php-seed-22';

AssociateTagを追加して、出来たURIを叩くと無事リクエストが通りました!

認証が必要になるのも時代の流れですかね。

Amazonアソシエイトから全期間の商品注文数をぶっこ抜くPHPコードサンプル

Amazonアソシエイトから全期間の商品注文数をぶっこ抜くPHPコードサンプル : akiyan.com

Amazonアソシエイトから全期間の商品注文数を取得するスクリプトです。こういうのは是非利用させていただきましょう。

Zend Framework: 複数のアイテムをZend_Service_Amazon::itemLookupで取得するには。

とくにマニュアルには載っていませんが、

Zend Framework: Documentation

引数として与えるASINを『カンマで区切って書く』ことで複数のアイテムを一度に取得してくれます。

[php]
itemLookup(‘ASIN000001,ASIN000002,ASIN000003’);
[/php]

Amazon Web Serviceの規約通り、一度に10件までしか問い合わせできませんので、ASINは10個までにしておきましょう。

無事、複数のアイテムが取得できましたでしょうか。