タグ

ブックマーク / gihyo.jp (10)

  • 第1回 インメモリデータストア Redisの概要 | gihyo.jp

    はじめに 株式会社ドワンゴで「ニコニコ生放送」の開発を担当している、小野と申します。特集では、いわゆる「NoSQL」の一種であるRedisの概要と基操作、そしてWebアプリケーションでの応用例までを、ニコニコ生放送での事例を交えながら紹介していきます。 Redisとは? Redisは、Salvatore Sanfilippo氏によって2009年に公開されたインメモリベースのキー・バリュー・ストアです。2010年3月にはVMWareが同氏を雇入れ、同社の支援のもと、コントリビューターのPieter Noordhuis氏と共にフルタイムで開発が進められています。 記事執筆時点での最新stableはバージョン2.0となり、新しいデータ型の追加やトランザクションのサポート、VM(仮想メモリ)の実装などが追加されました。 また、メモリ効率の向上やスループットの改善が図られたバージョン2.2が間

    第1回 インメモリデータストア Redisの概要 | gihyo.jp
  • 第1回 大規模データではRDBMSのどこがボトルネックになるのか? | gihyo.jp

    RDBMSはオワコン? 「右を向いても左を向いても“⁠ビッグデータ⁠”というキーワードが闊歩する時代に、いまさらRDBMSの話題?」 連載のタイトルを見てそう思われたかもしれません。 「ディスクベースのRDBMSはオワコン、これからは○○(お好きなアーキテクチャを入れてください)の時代だ!」 とおっしゃる方もいるかと思います。 しかし、むしろ多くの企業がビッグデータに注目しているおかげで、RDBMS側でも大規模データを取り扱うニーズが増えています。 大規模データを取り扱う時にボトルネックとなる5つのポイント 数百ギガバイトといったレベルのRDBMSであれば、現場のエンジニアの方にとってはあたりまえの世界でしょう。しかし、テラバイトを大きく超えたデータを扱う場合には、ボトルネックの傾向が変化するのはご存じでしょうか。 次の図は、RDBMSにまつわるボトルネックを示したものです。 図1 大規

    第1回 大規模データではRDBMSのどこがボトルネックになるのか? | gihyo.jp
  • 第2回 Linux KVMで知る仮想マシンの概要 | gihyo.jp

    第1回では、仮想マシンとは何か、その生い立ちや機能について簡単に紹介しました。今回から、x86システム仮想マシンがどのように実現されているのかを解説していきたいと思います。 x86システム仮想マシンには、VMwareによる仮想化製品をはじめHyper-V、Linux KVM、Xenなどがあることは、すでにご紹介したとおりです。この連載では、その中でも最近とくに注目を浴びているLinux KVMを中心に、x86仮想マシンの実装を見ていきましょう。今回は、Linux KVMの概要、および構成するソフトウェアについて解説します。 コンピュータを構成する3大要素 仮想マシンを理解するために、まず実際のコンピュータがどのような構成になっているかを知っておくと良いでしょう。コンピュータは、CPU、システムメモリ、I/Oデバイスの3つの要素から構成されています。 図1 コンピュータを構成する3大要素 C

    第2回 Linux KVMで知る仮想マシンの概要 | gihyo.jp
  • 第1回 JSDeferredによる簡単非同期処理 | gihyo.jp

    どうもはじめまして、株式会社はてなのid:cho45です。これから数回に渡り、拙作のJavaScriptのライブラリであるJSDeferredの紹介と、それに関係するJavaScriptにおける非同期の技術に関して解説させていただきます。 JavaSciptにおける非同期処理 非同期処理とは まずは確認程度に、非同期処理がどういうものかを解説しておきます。先に乱暴にまとめてしまうと、以下の事柄が大切なところです。 非同期とは「あとで」という意味 同期処理はコードの見た目順に実行される/非同期ではそうならない JavaScript の非同期処理は絶対に同期処理にすることができない JavaScriptにおける非同期処理をいくつか例に出すと、以下のようなものが挙げられます。 リスト1 // XMLHttpRequest の例 var req = new XMLHttpRequest(); re

    第1回 JSDeferredによる簡単非同期処理 | gihyo.jp
  • 第5回 JavaScriptの基礎知識#2:クロージャ編 | gihyo.jp

    こんにちは、太田です。前回はJavaScriptの基礎的な部分を解説しました。今回はJavaScriptのクロージャについて解説します。クロージャはJavaScriptでは使用頻度が高く(意識して使用していなくとも、ほとんどの場合クロージャが使われています⁠)⁠、今後の連載の中でも積極的に使っていきますのでここで確実に理解してしまいましょう。 クロージャとは クロージャはその定義を説明されてもなかなか理解できないため、難しいものだと思われがちです。しかし、ソースコードを中心に見方を少し工夫すればすんなりと理解できると思います。 さて、クロージャの前に確認しておくべき基事項があります。それは、JavaScriptでは関数を入れ子にできる、という点です。ある関数の中に別の関数を定義することができます。基中の基ですが、これがクロージャにおいてもっとも重要です。 では、それを踏まえて次のコー

    第5回 JavaScriptの基礎知識#2:クロージャ編 | gihyo.jp
    monochromekk
    monochromekk 2012/03/21
    javascriptにおけるクロージャの解説
  • Titanium Mobileで作る! iPhone/Androidアプリ 記事一覧 | gihyo.jp

    第4回TitaniumでTwitterクライアント─⁠─OAuthを使ったAPI呼び出し 倉井龍太郎 2011-01-11

    Titanium Mobileで作る! iPhone/Androidアプリ 記事一覧 | gihyo.jp
  • 第10回 [キャリアアップ編②]大規模サイトのサーバはどのように構成/運用されているのか? | gihyo.jp

    数値は平均化されてコンスタントに処理していることはなく、昼夜、平日休日、コンテンツのイベント的な仕掛けによって大きく左右されます。しかしながら、改めて見ても日有数のPV数を誇るといっても過言でもありません。 大まかな構成 次は実際にどのようなキャスティングでこのPVを処理しているのか見てみましょう。 ①通常、一般的なサービスを構築する際の構成として、アプリケーションサーバ(Webサーバ)とデータベースサーバの関係(階層)に関してほとんど変わりはありません。(⁠図4) 図4 この状態で順調にサービスが成長した場合、Webサーバ側で大量リクエストの処理に詰まってしまう可能性があります(図1の赤い線の部分)理由は先述したサービス成長に伴うリクエスト増加とDBサーバに対する処理応答待ち、すなわちデータ量の増加等が挙げられます。 この問題を解決する場合のインフラ側の対応として、静的コンテンツのキャ

    第10回 [キャリアアップ編②]大規模サイトのサーバはどのように構成/運用されているのか? | gihyo.jp
  • 第6回 JavaScriptとHTMLとDOMの基本#1 | gihyo.jp

    こんにちは、太田です。前々回、前回とJavaScriptの基礎的な部分を解説しました。今回はJavaScriptからみたHTMLを中心に、DOMについても少しずつ解説しています。 JavaScriptHTML FirefoxのアドオンやサーバーサイドJavaScriptなどの例外をのぞいて、多くのJavaScriptHTML上で実行されるので、HTMLは土台となる重要な要素です。そこでHTMLの基礎的な部分からHTMLJavaScriptの関係を解説します。 DOCTYPEとレンダリングモード HTMLといえば最初に書くのはDOCTYPEです。現在使われているDOCTYPEはHTML4.01、XHTML1.0、XHTML1.1といくつかの種類があり、さらにその中でTransitionalやStrictなどの違いや、XHTMLではXML宣言の有無(来は必須ですが)などバリエーションが

    第6回 JavaScriptとHTMLとDOMの基本#1 | gihyo.jp
    monochromekk
    monochromekk 2011/08/12
    正直意識してなかったことも書かれている
  • 第12回 使ってみよう! Bing Spatial Data Services──ジオコーディングをバッチ処理 | gihyo.jp

    versionとkeyパラメーターは、APIのすべてのURLで使用します。versionの値は現在v1です。これ以降の説明は省略します。 アップロードデータ アップロードするデータは、XML・CSV(カンマ区切り⁠)⁠・タブ区切り・パイプ区切りのテキストデータをサポートしています。HTTPリクエストのContentTypeヘッダーにはデータ形式に合わせて次のいずれかを指定します。 xml:application/xml csv, tab, pipe:text/plain データ形式についてはこの後に詳しく説明します。 レスポンス データをアップロードすると指定した形式(JSONまたはXML)でジョブの状態を表すレスポンスが返ってきます。レスポンス形式についても後ほど詳しく説明します。 データ形式 まずアップロードするデータ形式についてみてみましょう。アップロードしたデータに処理結果が追加さ

    第12回 使ってみよう! Bing Spatial Data Services──ジオコーディングをバッチ処理 | gihyo.jp
  • SoulHack #10 仕事の中にある「空気」を意識しよう | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    SoulHack #10 仕事の中にある「空気」を意識しよう | gihyo.jp
  • 1