MWSでのデータ取得
MWSの場合
①最安値データの取得
②出品数やランキング情報の取得
③商品情報(タイトルや定価など)
の取得が独立しており、別々に処理しなければなりません。
問題は、それぞれのアクセス制限時間が異なるということです。①は5秒まつと回復するのですが、②は10秒、③は20秒というなっています。(詳しくしりたい方はhttp://aws.typepad.com/jp_mws/2012/03/throttle_cheat_sheet.html)
要するにすべてのデータを取得しようとすると、最安値取得処理の時間がかかるということです。APC-Proの設定上では、とりあえず選択式にします。
仕様変更後でもPA-APIで商品情報やランキングを取得できるのであればその方法も用意します。
MWSのみでデータ取得を行う場合、②と③は選択で取得の有無を指定してもらいます。
これらの情報は、価格改定で、ランキングデータや出品数を使っている場合に注意が必要です。
逆に言えば、単純に同コンディションで最安値、あるいはコンディションにかかわらず最安値にしたいだけであれば、取得せずに早く処理できます。
ランキングデータは、現在総合ですが、MWSではカテゴリー別でも取得できるようです。 つまり、 ある本は、本で1万位、経営学のカテゴリーで1000位、ビジネスのカテゴリーで1200位といった感じです。 とりあえずは総合ランキングを取得するようにします。
Ver2.6以降の詳細データ取得(1位から10位の価格データの取得)はAmazonへの負荷軽減のために時間がかかります。 仕様変更後は、詳細データを取得しない方法での価格戦略を検討してください。
詳細データの取得は頻度設定も活用してください。 ただ、まだ完全ではありません。途中たタイムアウトが発生することがありますが、これはサーバー負荷やネットワーク環境によっては起こりうるものです。 リトライ(タイムアウトしたときに処理を続行するか)できるようにするかは、今後の課題です。 問題が一時的なものなのか、Amazonの障害なのかは判断が難しく、むやみにリトライしたくない(問題が生じたときはすぐに停止させたい)というのが開発者としての意見であります。