Twitterでつぶやかれた日本語ポストを収集して人気順に並べるサービスTwibがリリース一周年記念ということでリニューアルしたよ。
はてぶに似たデザインになって見やすくなって、はてぶとは違ってみんなのツイート付きだったりして楽しいよ! いろいろ機能が追加されたけど目玉は、「バズワード機能」。 最近のツイートから特徴的な言葉を抽出してて、朝方だと「朝焼け」が大きな文字で表示されたりするよ。 もちろん、それと関連するTwitPicの写真とか見れるよ! しかも、サイト上でそのまま表示(エンベッド)されるから便利だね。 以下に、リニューアルの改善点を挙げるよー。
1. インターフェースデザイン刷新
インターフェースを全面的にリニューアルしました。 トップページにより価値の高い記事をカテゴリ分けを行うことにより表示させています。
2. バズワード機能の追加
つぶやきから特徴的な言葉の頻出を計ることにより、 「今」話題の「バズワード」を右上に常に表示しています。 バズワードと関連のあるサイト情報を一覧することが可能です。 例えば、朝方ですと、「朝焼け」といった単語が大きな文字で表示され、 多くのユーザーが朝焼けの写真等をtwitpicなどの写真サービスを使い アップロードしている模様がわかります。
3. 「今、影響力のあるユーザー」表示
直近のRT(リツイート)された回数を数えることにより影響力のあるユーザーを表示する機能を 追加しました。
4. 100以上のサービスのエンベッド(埋め込み表示)に対応
TwitPicやflickrなどの写真サービス、ニコニコ動画やustreamなどのライブ動画配信サービスなど、 100以上のサービスの埋め込み表示に対応し、サイト上でそのままコンテンツを体験することができる ようになりました。
5. Twitterで特徴的な「写真」「動画」「ライブ」のカテゴリ分け
Twitterでは「写真」「動画」「ライブ」という3種類のサービスが経験により多くつぶやかれていることが わかりました。そこでその3つに絞って、カテゴリ分け表示を行い、 ユーザビリティの向上に勤めました。
6. RSS出力の改善により自社ドメインの影響力を図れるように
各ページではRSSを出力しています。 特にドメインもしくはホスト名別でつぶやかれたページをフィルタリングして出力させる機能が 便利です。例えば、自社のキャンペーンサイトのページが3回以上つぶやかれたものをフィードリーダーで 閲覧するなどと言ったことが可能です。
7. クローラーの修正
クローラーについて、攻撃性が強すぎて迷惑をかけていたところを修正しました><
はてぶもいいけど、TwitterユーザーならTwibもチェックだ!
ということで機能説明をしてきたけども、 今回システムのアーキテクチャも大きく変えました。 バックエンドになんとMySQLを捨てて、mongoDBを採用してみました。 Shard x 2 で現在稼働中で、そこそこ安定しています。 バズワードや「影響力のあるユーザー」の集計にmongoDBに付属のmap/reduceを使っています。 このAuto-Shardingとmap/reduceの機能、そして、 インサートがそこそこ速いことが今回導入の決め手です。
また、ジョブキューにQ4Mを使っていたのを、 あえて使う必要ないので、gearman-C にしました。
そして、各サービスのコンテンツの埋め込み(エンベッド)に対して一部以外は、 embed.ly の API を今のところJSで使用して、100以上のサービスに対応させました。 embed.ly はこういう時に便利です。
システムについて、結構面白くなってきたので後述するかもしれませんが、 ざっくりとはこんなところです。mongoいいよmongo。
ということで、Enjoy!