タグ

ブックマーク / atmarkit.itmedia.co.jp (110)

  • ソーシャルアプリのインフラはNode.jsが主役になるか~デブサミまとめレポート(ソーシャル&インフラ編) - @IT

    大人気ソーシャルアプリ「ドラコレ」のインフラ 最初に紹介するセッションは「大ヒットソーシャルアプリ「ドラゴンコレクション」の裏側 ~ 超高トラフィックを支えるアプリ・インフラの“明日から使えるテクニック”」。講演者は、コナミデジタルエンタテインメント ドラコレスタジオ マネージャー 廣田竜平氏だ。 「ドラゴンコレクション」(以下、ドラコレ)はコナミデジタルエンタテインメントが製作・運営しているソーシャルゲームである。同社の廣田氏による講演では、ドラコレを運用するインフラ技術について紹介された。 廣田氏によれば、ドラコレのHTTPリクエストはピーク時で1秒間に5けた台にのぼり、それを3けたの台数のサーバによって運用しているという。サーバ技術自体はCentOS+Apache+PHPMySQL(+memcached)という一般的なLAMP環境であり、複数のソフトウェアロードバランサとDNSラウ

  • Capybara-Webkit+Cucumber+Sinon.JSでJavaScriptのテストはここまで変わる

    Capybara-Webkit+Cucumber+Sinon.JSでJavaScriptのテストはここまで変わる:フレームワークで実践! JavaScriptテスト入門(5)(1/3 ページ) しっかりとJavaScriptをテストするために、今注目のJavaScript用のテストフレームワークをいくつか紹介し、その概要から実践的な使い方まで解説する連載。今回は、RubyでWebKitをヘッドレス化するフレームワーク、受け入れテストの記述が日語でできるツール、スタブやモック、スパイが使えるライブラリを組み合わせたテスト方法などを紹介。 Capybara-WebkitとCucumberとSinon.JSを利用したJavaScriptのテスト 連載の最終回となる今回は、これまでの連載のようなJavaScriptのロジックを単体テストするのではなく、Webブラウザ上の操作と、それによって動作

    Capybara-Webkit+Cucumber+Sinon.JSでJavaScriptのテストはここまで変わる
  • Webサイト高速化のプロセスだって自動化したい

    サーバ側にmod_spdyをインストールし、Google Chromeで、HTTP2.0でベースとなるSPDYのデモが行われた「Chrome Tech Talk Night #5」をレポートする。 Webサイト高速化のプロセス自動化と最高のパフォーマンス計測ツール 1月31日、Google 東京オフィスで開催された「Chrome Tech Talk Night #5」の模様をレポートします。Chrome Developer AdvocateのIlya Grigorik(イルヤ・グリゴリック)氏を迎え、SPDY導入方法を含むWebアプリケーションの高速化や、パフォーマンス向上の手法について説明されました。 イベント自体は「Making the Web Fast with PageSpeed」、「Wait, Chrome DevTools can do THAT?」の2部構成でしたが、このレポ

    Webサイト高速化のプロセスだって自動化したい
  • WebブラウザでJavaScriptをテストする「js-test-driver」とQUnit、Jasmineを連携してテストするには

    WebブラウザでJavaScriptをテストする「js-test-driver」とQUnit、Jasmineを連携してテストするには:フレームワークで実践! JavaScriptテスト入門(4)(1/4 ページ) しっかりとJavaScriptをテストするために、今注目のJavaScript用のテストフレームワークをいくつか紹介し、その概要から実践的な使い方まで解説する連載。今回は、js-test-driverの概要や基的な使い方、非同期処理のテスト方法、QUnitやJasmineと連携したテスト方法などを紹介します 前回まではWebブラウザを使わないJavaScriptテスト 前回「QUnitPhantomJSでJavaScriptのヘッドレスなテスト」、前々回「PhantomJSとJasmineで振る舞い駆動開発なJavaScriptテスト」と、「PhantomJS」を軸としたJa

    WebブラウザでJavaScriptをテストする「js-test-driver」とQUnit、Jasmineを連携してテストするには
  • 開発者が知っておくべき、ドキュメント・データベースの基礎

    開発者が知っておくべき、ドキュメント・データベースの基礎:特集:MongoDBで理解する「ドキュメント・データベース」の世界(前編)(1/3 ページ) ドキュメント・データベースの最大の特長は、「パフォーマンス、大量データ、スケーラブルといった課題を克服するためのシンプルなセットを提供している」という点だ。 もちろん既存の多くのリレーショナル・データベース(以下、RDB)でも、ドキュメント・データベースが備えている特徴的な各機能に類似することが実現可能だし、さらに広範な概念や機能性を提供している。例えばシャーディング(Sharding。詳細後述)についても、既存の多くのRDBでデータの分散化が可能だ。しかしドキュメント・データベースでは、「そもそもデータ構造がこうした構成に適している」という点と、「それに付随して、考え方もシンプルである」という点が優位な特徴である。 万人が、データベースが

    開発者が知っておくべき、ドキュメント・データベースの基礎
  • KVS系NoSQLのまとめ(Hibari、Dynamo、Voldemort、Riak編)

    序 章 ビッグデータの時代 第1章 NOSQLとは何か? 第2章 NOSQLのデータモデル 第3章 アーキテクチャの基概念と技術 第4章 HadoopはNOSQL? 第5章 主なNOSQLデータベース製品 第6章 NOSQLデータベースの選択基準 第7章 NOSQLを使うビジネス 連載は書籍『NOSQLの基礎知識』(リックテレコム刊、ISBN:978-4897978871)で解説されている内容から一部を抜粋し、連載向けに一部再編集して掲載したものです。 書籍では、一般にNoSQLと呼ばれている各種データベース技術について、基概念から主要なプロダクトの特性、ベンチマーク結果までを紹介しています。データモデルやアーキテクチャの違いといった基概念から、各プロダクトの特徴を理解できる内容になっています。 連載では、この書籍の内容から、主要プロダクトを紹介している第5章を抜粋し、そのエッ

    KVS系NoSQLのまとめ(Hibari、Dynamo、Voldemort、Riak編)
  • Play framework 2.0の概要/5つの特徴とScalaで作るための環境構築

    Play frameworkの背景と歴史 Ruby on Railsが人気となり、それ以外にもいろいろと軽量フレームワークが出てきた2009年ごろ、Javaのフルスタックフレームワークである「Play framework」の1.0(以下、「Play 1.0」)がリリースされました。 このころよく使用されていた(いまでも十分よく使用されていますが)Javaフレームワークは、SpringやSeasar2などのDIコンテナと、それに付随するORマッパー(Spring DataやS2JDBC)やMVCのフレームワーク(Spring MVCやS2Struts)でした。これらのフレームワークはそれぞれ十分な機能と実績があり、現在でもJavaでWebアプリケーションを開発する際には、まっ先に採用候補に挙がると思います。 しかし、これらのフレームワークは基的にJava EEでの開発用フレームワークなので

    Play framework 2.0の概要/5つの特徴とScalaで作るための環境構築
  • Node.js、Socket.IO、MongoDBでリアルタイムWeb

    Node.js+Socket.IO+MongoDB こんにちは! 著者は、マインドフリーという会社でNode.jsを使ってWebアプリなどを作成している。この連載では、最新Webテクノロジを使った研究開発の事例や実績を発信する弊社のサイト“Tech Release”のリニューアルで培ったNode.jsに関する知識を分かりやすくお伝えする。 Tech Releaseは一見、普通のブログに見えるが、実は記事の更新内容がリアルタイムにView画面に反映されている。管理者が、記事の文章(データ)に変更を加えると、その記事を見ている人にもページをリロードせずに、リアルタイムに文章(データ)が変化していく。 このUXを実現するために開発したシステムが、REALTIME BLOG ENGINE「REABLO」というエンジンだ。「REABLO」はNode.jsとSocket.IO、MongoDBを使用して

    Node.js、Socket.IO、MongoDBでリアルタイムWeb
  • ビッグデータ処理の常識をJavaで身につける

    Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 検索エンジンの常識をApache Solrで身につける ビッグデータ処理の常識をJavaで身につける(1) 検索エンジンの概要と周辺技術について解説し主な利用方法や実装ソフトウェア、Solrの利用方法などを簡単に紹介します

  • 試すのが難しい―機械学習の常識はMahoutで変わる

    ビッグデータ時代―なぜ、いま機械学習なのか Apache Hadoop(以下、Hadoop)の登場で、今まで捨てていたデータ、貯めるだけで処理しきれなかったデータを活用できるようになりました。 活用手段として最近とみに注目されている技術が「機械学習」であり、Hadoopの強みを生かし簡単に機械学習を行うためのライブラリが、「Apache Mahout」(以下、Mahout)です。 稿ではMahoutを動かしてみることで、機械学習の常識を身に付けます。 そもそも、機械学習とは? 機械学習とは、一定のデータをコンピュータ・プログラムに「学習」させ(すなわち、そのデータに潜むパターンや規則性を表す「モデル」を自動的に構築させ)、他のデータにそのモデルを適用すれば、あたかも人間のように複雑で柔軟な判断が行えるようにするという試みです。 機械学習をビジネスに活用した例は、レコメンド(ユーザーや商品

    試すのが難しい―機械学習の常識はMahoutで変わる
  • 管理が困難―分散処理の常識はZooKeeperで変わる

    管理が困難―分散処理の常識はZooKeeperで変わる:ビッグデータ処理の常識をJavaで身につける(8)(1/3 ページ) Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 分散処理の課題が「管理」なのは常識 複数の計算機上で動作(分散)するアプリケーション、ソフトウェアが多く存在します。分散ソフトウェアは複数の計算機で動作することで大量のデータを扱えたり、高負荷な状況に対処します。稿では、複数の計算機(クラスタ)で動作する各サーバを「インスタンス」と呼びます。 連載で紹介した分散Key-Valueデータベースである「HBase」は複数の計算機で動作する代表的なソフトウェアです。両ソフトウェアはともに「Apache ZooKeeper」(以下、Z

    管理が困難―分散処理の常識はZooKeeperで変わる
  • Java開発で泣かないためのPlay frameworkの基礎知識

    Javaの常識を変える「Play framework」とは 「Play framework」は、サーバサイドJavaScalaのためのMVCフレームワークです。この連載では、主にJavaのフレームワークとしてのPlay frameworkを紹介していきます。でも「Javaで、Web向けで、MVCで……」なんて、ありふれた感じですよね。それなら「Scalaで、どう作るのか」という話の方が興味あるという方もいるでしょう。 しかし、Play frameworkはバージョン1まではJavaのフレームワークとして作られていました。また、ScalaJavaVM上で動作するプログラミング言語です。つまり現在の最新バージョンの2でも基礎の部分で動いているのはJavaです。Play frameworkを知るためには、まず基礎から固めていくのが正攻法だと思います。Scalaについて知りたい読者は、以下の記

    Java開発で泣かないためのPlay frameworkの基礎知識
  • 素早く正規形を見抜く実践テクニック(1/4) - @IT

    今回のテーマはデータベースエンジニアの必須知識の1つである「正規化」です。正規化は、リレーショナル・データベースのテーブル設計を行ううえで非常に重要なテクニックであり、データベースを設計、実装したことのある方なら一度は正規化に触れているのではないでしょうか。 それほど基的な知識であるにもかかわらず、正規化を説明できる人はなかなかいません。多く聞かれるのが「何となくテーブルを作ると自然に第3正規形になる」とか「実務上は第3正規化まで行えば問題ない」というものです。 ではなぜ「第3正規化まで行えば問題ない」のでしょうか。稿ではひととおり正規化について確認しながら、あまり触れられることのない第3正規化より先の正規化を紹介して、この疑問に答えていきたいと思います。 正規化の位置付け 正規化は、データベース設計全般にかかわる基礎知識ですが、特に論理データモデリングの作業の中で必要になります。稿

    素早く正規形を見抜く実践テクニック(1/4) - @IT
  • 広範なWebアプリ開発言語にDoS攻撃につながる脆弱性 - @IT

    2012/01/06 情報処理推進機構(IPA)は1月6日、広くWebアプリケーション構築に用いられている開発言語やフレームワークに、DoS攻撃につながる脆弱性が発見されたことを踏まえ、緊急対策情報を公開した。 影響を受けるのは、PHPRubyといった開発言語のほか、WebアプリケーションフレームワークのApache Tomcat、Microsoft .NET Frameworkなど。これらの言語が実装しているハッシュテーブル機構に脆弱性がある。わざとハッシュ値が同じ値になるようなパラメータを大量に送り付け、「ハッシュ衝突」状態を作り出すとDoS状態に陥ってしまう。いわゆる「Hashdos」という攻撃で、例えばPOSTフォームからこうしたデータを送信することで、Webアプリケーションが停止するなどの被害が考えられる。 この脆弱性を踏まえ、マイクロソフトは2011年12月30日に、Micr

  • 2大オープンソースRDBMSの近未来が見えた!(1/2) - @IT

    オープンソースDBMSのコミュニティが一堂に会し、それぞれの技術について発表し合う「オープンソースカンファレンス 2011.DB」。MySQLとPostgreSQLの2大DBMSの将来像を探った。(編集部) 2011年11月5日、オラクル青山センターにてオープンソースカンファレンス2011.DBが開催された。話題をデータベースに限定してオープンソースカンファレンスを開催したのは、2008年6月以来3年ぶり。イベントではコミュニティを代表するメンバーが各製品の近況や概要を解説した。商用製品のオフィシャルなセミナーと違い、聴衆が仲間であったり、関連コミュニティのメンバーであったりするので、勉強会のように打ち解けた雰囲気で進んでいく。記事ではPostgreSQLMySQLのセッションを中心に紹介する。 9.1では同期レプリケーションまで進化 最初のセッションで登壇したのは日PostgreS

  • 「高校生になって初めてスクラムを始めました」~「ストーリー」で何を作るかまとめよう

    「高校生になって初めてスクラムを始めました」~「ストーリー」で何を作るかまとめよう:かんばん!~もし女子高生がRedmineスクラム開発をしたら(1)(1/3 ページ) 連載は、ちょっととぼけた女子高生の姉妹が今注目のアジャイル開発手法であるスクラムプロジェクト管理ソフトの「Redmine」を使って、システム開発をするというフィクションです。

    「高校生になって初めてスクラムを始めました」~「ストーリー」で何を作るかまとめよう
  • Commons DBCPを超えるTomcat JDBC Poolとは

    Commons DBCPを超えるTomcat JDBC Poolとは:Tomcat 7の新機能で何ができるようになるのか?(番外編)(1/2 ページ) TomcatのDBコネクション・プールは2つある @IT読者の皆さんは「Tomcat JDBC Connection Pool」をご存じですか? 通常、TomcatのDBコネクション・プールといえばApache Commonsプロジェクトの「Commons DBCP」を想像するかと思います。しかし、Tomcatには「Commons DBCP」以外にもDBコネクション・プールの実装が存在します。それが、「Tomcat JDBC Connection Pool」(以下、Tomcat JDBC Pool)です。 Tomcat JDBC Poolとは、Apache Tomcatプロジェクトが独自に作成したDBコネクション・プールの実装のことです。

    Commons DBCPを超えるTomcat JDBC Poolとは
  • 本当は怖いパスワードの話 ハッシュとソルト、ストレッチングを正しく理解する - @IT

    PSN侵入の件から始めよう 今年のセキュリティの話題の中でも特に注目されたものとして、4月20日に起こったPSN侵入事件があります。5月1日にソニーが記者会見をネット中継したことから、ゴールデンウィーク中にもかかわらず多くの方がネット中継を視聴し、感想をTwitterに流しました。もちろん、筆者もその1人です。 このときの様子は、「セキュリティクラスタまとめのまとめ」を連載している山洋介山さんが、Togetterでまとめています。 Togetterのまとめを読むと、漏えいしたパスワードがどのように保護されていたかが非常に注目されていることが分かります。Togetterのタイムラインで、14:48ごろにいったん「パスワードは平文保存されていた」と発表されると、「そんな馬鹿な」という、呆れたり、驚いたりのつぶやきが非常に多数流れます。 しかし、15:03ごろに「パスワードは暗号化されてなかっ

    本当は怖いパスワードの話 ハッシュとソルト、ストレッチングを正しく理解する - @IT
  • jQuery Mobileでサクッと作るスマートフォン向けWebアプリの基本 ─ @IT

    大日印刷 森川 裕美 2011/9/29 jQueryMobileを使って、スマートフォン向けのWebアプリケーションを手軽に作成する方法をおばかアプリを例に紹介します おばかアプリの開発にjQuery Mobileを使ってみました 先月8月20日に開催されました「第5回おばかアプリ選手権(見よ! コレジャナーイアプリの数々を!)」にて、jQuery MobileとHTML5の要素を使用した、iPhoneのMobile Safariで動作するミニアプリiBooNを紹介させていただきました。記事では、jQueryMobileを使って、お手軽にスマートフォン向けのWebアプリケーションを作成する方法をiBooNを例に紹介します。 iBooNは、iPhoneの傾きに応じて車の音が変わるミニアプリです。まず、Color Select画面から好きな色の車を選びます。ミニカーの画像が表示された画面

  • Android開発で泣かないための「テスト」の重要性(1/2) - @IT

    8月6日、日Androidの会テスト部(以下、テスト部)主催によるイベント「第1回Androidテスト祭り」が都内で開催された。テスト部は、Androidプラットフォームでの開発において、特にソフトウェア検証テストに関する情報共有や問題解決を目的とした組織だ。2010年9月に発足し、イベント開催時点では276名のメンバーがいるという。 今回のイベントは、その自由度の高さや多様性ゆえに課題を抱えるAndroidアプリ開発のテストについて、開発者同士やコミュニティでの情報交換を目的に開催された。テスト部では、すでに日Androidの会の総合イベント「Android Bazaar and Conference」での講演をはじめ、さまざまな活動を行っているが、単独イベントは今回が初だ。