Creazy!

WEBエンジニア・ヤガーのテック・ガジェットブログ

開発実績

Delicious被ブックマーク数画像取得APIへのアクセス状況

投稿日:


以前公開した、拙作APIの負荷が結構スゴいす。
Delicious2.0 の被ブックマーク数画像取得APIを作りました
Deliciousがオフィシャルに非ブックマーク数画像取得APIを用意する気がないみたいなので、色んなサイトやサービスで利用していただいているようです。それ自体は嬉しい事なんですが、想定以上にアクセスが増えています。

APIへのアクセス状況

  • リクエスト数
    • 35,000 req(/1日)
    • 1000,000 req(/1月)

月100万リクエストもきています・・・。
ってか、APIというサービス特性から考えればこのくらいは普通なんだろうけど、これほど使われるとは思っていなかったのです。
で、実際にやっている事は、DeliciousのAPIを叩いてAmazon S3にブックマーク数の画像を保存しているくらいなので、1リクエストあたりの負荷はそんなに大した事ないはずなんです。が、Delicious APIのレスポンスが遅い時もあるし、S3は平均的に遅かったりするので処理時間は結構かかったりしています。

キャッシュもたまりにたまって・・・

外部へのリクエストのオーバーヘッドがすごいので、内部的にAPIの結果や画像をキャッシュさせているのですが、レンサバでmemcachedとか使えないので普通にファイルに書き出していました。そしたら、いつのまにかキャッシュファイルだけで1.5GBとかになってレンサバのファイル上限を超しちゃったりしてました。
しかも、1フォルダに数十万ファイルとかできてて削除するもの一苦労っていう…。
そもそもキャッシュ削除を考えてなかったのが悪いんですけどね。

今後

とりあえず、キャッシュを定期的に削除する仕組みはすで入れてあるんですが、リクエスト数に応えきれていないのは変わりません。もうちょっとキャッシュを長くしたり、S3を使わない方法を考える必要がありそうです。
というか、今のレンサバ(Xrea)での運用は限界かもなぁ。
別のサーバー(CoreServer?)に引っ越すか、ラボ自体をGoogleAppEngineに移行していくってのが良いかもしんない。(けど、時間かかるだろな)

-開発実績

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

JavaScriptでSLを走らせる「SL.JS」を作りました

開発に関わっていて、UNIX(Linux)を触った事のある人は「SLコマンド」をご存知の方が多いのではないでしょうか? lsを間違えてslと打つとこんなのが煙を吹きながら走る sl(1) コマンドを作 …

動画を楽しもう!(YoutubeでHD動画など全形式でダウンロードできるブックマークレット)

[2009/05/26:追記] YouTube Downloader(GreaseMonkey)をベースにした最新版のブックマークレットを下記エントリーで公開していますので、こちらもご確認ください。 …

TwitGIFの表示不具合解消のお知らせと、Twitter API制限への対応について

ここ最近TwitGIFが更新されないとか、新しく作れないなどの問題が起きていました。 実は、かなり前からTwitGIFのユーザー数の増加により、Twitter のAPI実行回数制限に達してしまい最新の …

embedで埋め込まれたYouTube動画もダウンロードできる「YouTube HD Everywhere」

コツコツ更新を続けているYouTube HD Suiteの兄弟スクリプトと呼べそうなものを作ってみました。 YouTubeはembedと呼ばれるHTMLコードを貼付ける事で、YouTube以外のサイト …

Ustreamのリニューアルに「Ust DL」を対応させました(一部MP4ダウンロード可能)

【2012/01/03:更新】 Ust DLの公式ページができました。今後の最新情報はこちらをご確認ください。 Ust DL 公式ページ 8/25にUstreamのリニューアルがあったようで画面の見た …

スポンサードリンク

スポンサードリンク