タグ

ブックマーク / www.cyberagent.co.jp (9)

  • Socket.IO, Redisを使用し各ゲーム間でプッシュ通知するシステム | 株式会社サイバーエージェント

    2. システム概要 homingは、アメーバピグ関連サービスのいずれかにログインしているユーザに対して、各サービスの通知情報を横断的にプッシュ通知します。 システムの構成は以下の通りです。 図2-1. システム概要 2-1. APIサーバ ユーザへの通知要求を受け付けるREST fullなAPIを備えたWebサーバです。 Node.jsのClusterによる、master/worker構成で稼働します。 通知要求はワーカプロセスで処理します。 図2-2. APIサーバ 2-2. Redisサーバ(データストア用) 一時的なデータをストアするためのRedisサーバです。 sentinelプロセスによる、master/slave構成で稼働します。 ストアされたデータはメモリ上のみで管理し、ディスクへの書き込みは行いません。 以下の情報を管理します。 ユーザのオンライン情報 ユーザIDの索

  • MySQL to HBase Heterogeneous Replication【実装編】 | 株式会社サイバーエージェント

    概要 Hadoopを用いたログ集計基盤は次第に整備されつつあるが,集計にはユーザなどのいわゆるマスタデータ(会員登録情報,プロフィール情報など)とのJOINが必要とされることが多い. しかしながら,(特にAmebaサービスでは)マスタデータはMySQLに保存されていることが多く,さらにHDFSには追記処理しかできない(特定行の削除などができない)ためマスタデータをMySQLからダンプコマンドにより全データ取得し,HDFS上のファイルを置き換えるという非効率な処理に陥りがちである. そこで,MySQLからHadoop(HDFS)をベースとしながら,ランダムリード/ライトが可能なHBaseにデータレプリケーションが可能となれば非常に便利である. 稿では「MySQL to HBase Heterogeneous Replication【第一報】」に続き,実際にMySQLからHBaseへのヘ

    potato777
    potato777 2013/09/03
  • メンテナブルCSS

    概要 メンテナブルなCSSを目指し、定義された一般的なCSSルールの紹介と、それらのルールを適用するにあたって活用できるツールを報告します。 1. 序論 CSSは記述ルールが簡素であり、少しの学習コストですぐに記述ができる手軽なツールです。 しかし、大規模なアプリケーションで複数人で開発するケース等では、見栄えだけしか考えずに身勝手にコーディングしてしまうと、 非常にメンテナンスコストがかかる負の遺産が作られてしまいます。 そのためCSSの品質を保つために様々なプロジェクトで、CSSの定義ルールが決められています。 稿では一般的なCSSの定義ルールと、そのルールがなぜ作られたのかを合せて報告致します。 また、CSSのルールを適用するにあたって、手動・目視でルールの適用をチェックするのは非常にコストが高い作業です。 これらルールの適用を補助するツール群を、合せて報告致します。

  • 平成23年度 研究レポート課題

    平成 23 年度 研究レポート課題 OpenCV による顔認識システムの開発 サービスディベロップメントグループ 寺 隆彦 2011 年 8 月 31 日 概要 現在、OpenCVを用いた顔認識システムを開発している。実用上耐えうる認識 精度を達成する必要があるが、OpenCVが標準で提供している分類器を利用して もさほど良い精度は得られない。稿では、多くの分類器によって顔画像と判 定された画像ほど、顔画像の可能性が高いという仮定に基づき、複数分類器の 検出結果積算による認識精度向上手法を提案する。実際に提案手法を顔認識シ ステムとして実装し、評価実験を行った。その結果、ベンチマーク対象である Android標準ライブラリを用いた顔認識よりも、高い精度を実現した。 第 1 章 はじめに 1 背景 現在、スマートフォンのアプリケーションで利用可能な顔認識システムの開 発をしている。顔認

  • 【CyberAgent】技術情報/TechReport - テックレポート/リッチスマートフォンWebアプリのメモリ管理 | 株式会社サイバーエージェント

    ディベロッパーズブログ 1pixel にて執筆した内容です。 ブログ記事内容に比べてまとめがほんの少しだけ充実しています。 どこでもピグライフとは PC版ピグライフはFlashでつくられていますが、どこでもピグライフはHTML5/CSS3/Javascriptで制作を行いました。画面遷移をせず、直接エリア上のテーブルや作物をタップして操作したり、メニューを下から引き出したり、ネイティブアプリのような操作を目標にしています。 方針 そもそものメモリ容量が少ないスマートフォン端末で遷移の無いアプリケーションを制作する上で、多少のパフォーマンスを犠牲にしてもこまめにデータを削除する必要がありました。 例えば普段隠れて表示されていない「ピグとも」のビュー部分を画面外に生成しておけば、表示のパフォーマンスは上がるのですが、その分メモリを消費してしまいます。どこでもピグライフでは、ほとんど常に表示され

  • 【CyberAgent】技術情報/TechReport - テックレポート/「アニメーションの原則」について | 株式会社サイバーエージェント

    概要 フランク・トーマス、オーリー・ジョンストン著「Disney Animation, The Illusion of Life(生命を吹き込む魔法)」の第3章「アニメーションの原則」で解説されている12の原則を、Flashを使用してアニメーション制作をしているアメーバ・ピグで実践してみます。 目次 「アニメーションの原則」に記載される12の原則は以下通りです。 スクオッシュ(潰し)とストレッチ(伸ばし) アンチペーション(予備動作) ステージング(演出) ストレート・アヘッド・アクション(逐次描き)とポーズ・トゥ・ポーズ(原画による設計) フォロー・スルーとオーバーラッピング・アクション(あと追いの工夫) スロー・インとスロー・アウト(両端づめ) アーク(運動曲線) 副次アクション タイミング 誇張 実質感のある絵 アピール(訴える力) タイムラインアニメーションにそのまま活かせる考え方

  • 【CyberAgent】技術情報/TechReport - テックレポート/MongoDBの運用について | 株式会社サイバーエージェント

    ■はじめに 弊社でも、ピグライフをはじめとしてモバイルゲームなどのサービスでMongoDBを使い始めています。 運用に関してはMySQL等にはまだノウハウ的にはかなわないものの、NoSQLのジャンルの中では有用なプロダクトであるといえるかと思います。 ですが、運用に関しての共有ができておらず、有効な使い方ができていないパターンも多いです、そのため運用に関してノウハウを共有するための資料を作成しました。 ■概要/特徴 MongoDBには以下のような特徴がある ●      BSONによる、JSONによるスキーマレスなデータ運用 これにより、柔軟なデータ構造をわかりやすく表現できる。 加えてスキーマレスなため、データの構成を柔軟に帰ることが出来る ●      レプリカセットによる冗長化対応 MySQLでも、マスタを冗長化するためには、MySQLCluster、MHAなどのプロダクトがあ

  • 【CyberAgent】技術情報/TechReport - テックレポート/Amazon Web Servicesについて | 株式会社サイバーエージェント

    概要 既存のインフラを利用しないで、「Amazon Web Services」(以後AWS)のみを利用し新規でサービス展開を行う場合に必要な情報、知識をまとめる。 注意 基的な利用方法を除外し、実際の構築時に必要なトピックスに焦点をあてドキュメントを作成しました。 特にオープンに公開されている情報については割愛(Web及び書籍で多数公開されている情報)しています。 補足 ドキュメントは、2012/08時点でのAWSで提供されているサービスを元に記述されています。AWSは日々新機能がリリースされていますので、利用する際は最新の情報を取得してください。 目次 概要 注意 補足 目次 序論 クラウドのメリット クラウドのデメリット AWSの製品・サービス構成 内容 アカウント管理 Consolidated Billing(一括決済) 使用例 作成手順 補足 AWS Support 補足 A

  • redis ソート済みセット型を利用した タイムラインのリアルタイム生成アーキテクチャ

    redis ソート済みセット型を利用した タイムラインのリアルタイム生成 アーキテクチャ スマートフォンコミュニティグループ 寺 隆彦 2012 年 2 月 29 日 概要 アメブロフェイスというスマートフォン向けのブラウザベースのサービスを リリースした。アメブロフェイスは、自分のタイムライン上にフォローした芸 能人の顔写真のみが表示されるというサービスである。タイムライン形式のイ ンターフェースを実現するにあたり、一般的なアーキテクチャを採用すると、 つながり数が多くなるにつれてレスポンスタイムが遅くなる問題や、データ量 の増加に起因して運用コストが高くなる問題、ディスクへの書き込みがボトル ネックになってコンテンツの反映が遅延する問題などが起きることが想定され た。アメブロフェイスでは、これらの問題を解決すべくresisのソート済みセット 型を利用してリアルタイムにタイムラインを

  • 1