Category Archives: Amazon

albで繋がりにくいことがあるのを解消

AWSでケチケチ設計だとALBにインスタンス1つしかぶら下げてない、みたいなことあるじゃないですか。
そんな運用でどうにも接続が遅いときがあったんです。気がつくと繋がってる、みたいな。

EC2(http) <-> ALB(https) <-> the Internet

なんですが、

ロードバランサー属性のhttp/2がよくない!と聞き、それをoffにしたがあまり変わらず。。

問題は

アベイラビリティゾーンの選択で2つサブネットを選ぶところ、1つのサブネットがPrivateだったのが駄目、なのでした。

どうせ1つしかインスタンスつなげてないので、それにアクセスできるサブネットがPublicだったらいいじゃないか、と思いますよね?(浅はか)

もう1つpublicなサブネットを作り、2つともpublicなものにしたら直しました。メモメモ。

EC2のタイムゾーンを日本に変更

昔は設定ファイルを色々変えてた記憶があるのですが、今は設定ファイルをコピーするのがベターなんですかね?

cp /usr/share/zoneinfo/Japan /etc/localtime

シンボリックリンクを貼るだけでもいいらしいですが、まあ。

django2をapache2 @ ec2 で動かす。

django2をec2のapacheで動かします。とりあえずvenvを起動。

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]と[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

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

# /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など、と指定されているので、これが良く忘れられがちなんでしょうね。というかこれが最近必須になったのか。

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

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個までにしておきましょう。

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