タグ

ブックマーク / inside.pixiv.net (4)

  • 「超大量絵馬」の裏側 (1) - pixiv engineering blog

    こんにちは、@harukasanです。 普段はpixivのインフラチームでpixivのインフラや画像配信インフラを担当しています。 今回は社内でおもしろそうな話をしてたので聞いていたところ、1,000万ユーザー記念企画をやることになっていました。 さて、今日は「超大量絵馬」企画がどのように動いているかをさくっと解説したいと思います。 「超大量絵馬」の主な機能 今回の「超大量絵馬」は3人のエンジニアがフルコミットで開発しました。 プロトタイピングが始まったのは1月の中旬くらいでしたが、 前回の記事にあったとおり、絵馬の形が決まってから体の開発期間は2週間少ししかありませんでした。 開発しないといけないことはたくさんありましたが、次の3つがメイン機能です。 隣の人が描いているのがわかるリアルタイムお絵かき サーバで生成したサムネイル画像をスクロールして閲覧できるビューア 誰が描き始めたかわか

    「超大量絵馬」の裏側 (1) - pixiv engineering blog
    yuiseki
    yuiseki 2014/03/03
  • pixivのデータストア/キャッシュ戦略 その1 - pixiv engineering blog

    Zoff PCのカラータイプ眼鏡を愛用しているインフラ兼ソフトウェアエンジニアのbokkoです。 夏休みは山登り -> 温泉で悠々自適に過ごしてましたが、休み明けから筋肉痛で体のあちこちが痛いです(><)。 今回はpixivで活用しているデータストアやその周辺ミドルウェアの話を3回くらいに分けてしようと思います。 pixivを支えるデータストア pixivでは主に以下の2つをデータストアとして活用しています。 MySQL KyotoTycoon MySQL pixivではユーザやイラスト、ブックマーク、あるいはそれらに関連した情報といったサービスの根幹に関わるデータはMySQLに保存しています。 これはMySQLの高い信頼性のほかに、ピクシブ社内でMySQLの運用に関するノウハウが蓄積されていたり、自作の運用ツール群が充実しているというのが大きな理由です。 KyotoTycoon Kyot

    yuiseki
    yuiseki 2013/04/04
  • pixivのデータストア/キャッシュ戦略 その2 - pixiv engineering blog

    先月末にwww.pixiv.netのバージョン管理をSubversionからGitに移行できてホッとしているインフラ兼ソフトウェアエンジニアのbokkoです。 pixivのSubversionリポジトリには\( ^ o ^ )/ディレクトリなるものが存在していて、開発が終了したプロジェクトやもう使われなくなったソースコードはremoveされるのではなく、 この\( ^ o ^ )/ディレクトリにmoveされます。 www.pixiv.netもGitに移行した後、{trunk,branches,tags}のすべてを\( ^ o ^ )/へmoveしましたが、あまりにも巨大過ぎて「svn move -> commit」が完了するのに1時間半かかりました。おそらく僕の人生の中で最も時間のかかったコミットとして全僕の中で語り継がれるのではないかと思います。 最近は弊社でも「最初に触れたバージョン管

    yuiseki
    yuiseki 2013/04/04
  • pixivのデータストア/キャッシュ戦略 その3 - pixiv engineering blog

    HHKB Professional Type-Sが欲しいインフラ兼ソフトウェアエンジニアのbokkoです。 普段はHHKB Proの日語配列キーボードを愛用しています。英語配列は苦手です。このことを同僚のエンジニアに言うとジト目で見つめられ・・・睨みつけられること請け合いです。 連載の最後となる今回はpixivのデータストア/キャッシュ戦略を支える周辺ミドルウェアについて解説していきます。 memcachedからKyotoTycoonへ移行した際に発生した問題 前回の記事の最後にもあったようにpixivではAPの数だけあったmemcachedへのリクエストを少数のKyotoTycoonにまとめたことで一部のKyotoTycoonサーバへのTCPコネクション数が爆発してKyotoTycoonサーバのCPUやメモリリソースには余裕があるのにネットワークで詰まるという問題が起こりました。 元

    yuiseki
    yuiseki 2013/04/04
  • 1