2009年2月1日日曜日

開発の苦労話その1~単語リストの取得に時間がかかりすぎる

iknowlyrics.comには「単語リスト作成」という機能がある。
これは、歌詞で使われている単語を取得した後に、その単語がiKnow!に登録されているかどうかをチェックするというものだ。
開発当初は手続き的にiKnow!にクエリーを送信していたが、遅すぎて現実的に使えなかった。
理由は、100個近くある単語すべてに対して"search items"をリクエストしているから。
問題を解決するために、マルチスレッドにして分散して呼び出すようにした。
しかし、実際に動かしてみると、取得できる単語数が少ない上に、取得する度に単語数が変化していた。
どうやら同時リクエスト数がiKnow!側で制限されているような気がする。
そこで、1秒間に呼び出すスレッドの数を制限することで調整した。
というわけで、これ以上この機能を早くするのは、iKnow! APIの仕様が変わらないと難しいかもしれない。

0 件のコメント:

コメントを投稿