タグ

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

  • Androidでアプリ内課金を始めるための基礎知識

    Android Marketのアプリ内課金サービスとは アプリ内課金サービスとは、アプリ内でデジタルコンテンツを販売するためのAndroid Marketのサービスです。このサービスを利用することで、音楽や画像などのダウンロード可能なファイル、ゲーム難易度やポーションなどの架空のアイテム(俗に言う「アイテム課金」)など、幅広いコンテンツを販売が可能です。 アプリ内課金の特徴は、以下のとおりです。 決済はAndroid Marketが代行してくれる 決済方法はAndroid Marketでアプリを購入する方法と同じでユーザーフレンドリー 決済手数料はアプリ販売と同じ30% 以下はアプリ内課金サンプルの決済処理の画面遷移です。 左画面で、アプリ内で購入するアイテムを選択し「Buy」ボタンをタッチすることで、中央画面のAndroid Marketが提供するチェックアウト画面が表示され、ここで決済

    Androidでアプリ内課金を始めるための基礎知識
  • どっちが面白い? ドキュメント指向データベース(1/2) - @IT

    NoSQLと言えば、Hadoopやmemcachedのように、大量のサーバで分散処理をすることで、高い処理性能を引き出すためのものというイメージを持たれている方もいるかもしれません。しかし、NoSQLにもいろいろあります。昨年から注目を集め始めたのが「ドキュメント指向」と称するデータベース管理システムです。ドキュメント指向データベース管理システムの中でもユーザー数でトップを争うMongoDBとApache CouchDB(Couchbase)のイベントに参加してきました。 開発メンバーが来日、MongoDB Tokyo 2012 1月18日、東京でMongoDB Tokyo 2012というMongoDBユーザー向けのイベントがありました。このイベントはオープンソースのドキュメント指向データベース管理システム「MongoDB」を開発している10genが主催したものです。 10genはアメリカ

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

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

  • サーバサイドJavaScriptの本命「node.js」の基礎知識

    3/4補足 稿を見ていただいた皆さん、はてなブックマークなどでコメントいただき、ありがとうございます。話題のNode.jsということもあり、はてなブックマークも1000ユーザーを超えました。私の力不足もあり、いろいろな方からご指摘をいただいておりますので、Nodeのインストール方法については、近日中に次回記事で補足・訂正させていただきたいと思います。ご指摘ありがとうございます。非常に勉強になります。 Node.js 0.4をインストールしてみよう 稿では、Ubuntu 10.10に記事執筆時のNode.js 最新版(v0.4.0)をインストールします。 以下のコマンドをターミナルから実行し、Node.jsのソースコードをダウンロードします。

    サーバサイドJavaScriptの本命「node.js」の基礎知識
  • 検索技術を使うなら知ってないと損する6つのこと~クックパッド、グリー、ぐるなび、CROOZは検索技術をどう使っているのか(2/2) - @IT

    グリーでログ分析システムの開発を行っている一井崇氏からは、「全文検索のちょっとちがった使い方(仮)」と題する発表があった。 グリーにおける数値指標管理では、基となるデータの総数が「1億キー×最大7年」という膨大な量に上り、さらに時間ごとに増え続けるアプリIDとの組み合わせなども考慮すると、すでに人間の手では管理しきれない状態にある。 同社ではMySQLベースのKVS(Key Value Store)によって、これらのデータを管理しているが、問題はkeyの数が膨大過ぎて必要なkeyを見つけるのが困難になっていることだという。 その解決のためにHadoopやMongoDBを導入するといった選択肢もあるが、同社が取った方法は「key stringを全文検索することで目的のkeyを探す」というものだった。一井氏によれば、グリーの数値指標管理システムの目的を整理すると、以下のようになるという。 や

  • ついに登場! MySQL 5.5 (1/2)- @IT

    2011年はどんな年になるのでしょうか。データベースがどう進化するのか楽しみですね。一年の計としてスキルアップを掲げた人もいるのではないでしょうか。今回はMySQLの新バージョンと、データベース関連の資格試験のお話です。 可用性向上を図ったMySQL新バージョン まずは昨年末に飛び込んできたニュースから。2010年12月16日、オラクルがリレーショナルデータベース管理システム(RDBMS)「MySQL」の新版である「MySQL 5.5」の提供を始めました。 「よかった、当によかった」と私は胸をなで下ろしました。何よりも、新バージョンがGA(正式版)に到達できて安心しました。2010年4月のMySQL Conference & Expoでは5.5の紹介がありましたが、一時は5.6というバージョンナンバーが出てきたこともありました。内心どうなることかとはらはらしていたのですが、これで落ち着き

    kicyon
    kicyon 2011/02/25
  • WebSocketの現状と技術的課題

    WebSocketの現状と技術的課題:WebSocketで目指せ! リアルタイムWeb(2)(1/2 ページ) 今回はWebSocketを取り巻く技術的課題や、実装状況についてご紹介します。また私たちが開発したサービス「Pusher」についても取り上げます。 WebSocketに関連した技術的課題 前回のWebSocketの紹介を読んでくださった読者のみなさんはWebSocketを試してみたくてたまらないのではないでしょうか。でも少し待ってください。皆さんを脅かす訳ではありませんが、以下の点についても考えなければいけません。 変化し続けるドラフト IETFのドラフトを見てみると、最初のバージョン(00)は2009年の1月に策定されたのが分かります。Chromiumが最初にWebSocketの実装を発表したころのバージョンは66の辺りです。 それからしばらくの間はマイナーチェンジばかりだった

    WebSocketの現状と技術的課題
  • WebSocketで目指せ“リアルタイムWeb”!第1回 node.jsの衝撃とWebSocketが拓く未来 - @IT

    ご挨拶 こんにちは、ロンドンのNew Bambooという会社でWebエンジニアとして働いている@makoto_inoueです。ここのところ、PusherというWebSocketのクラウドサービスの開発に関わっています。今回から3回に渡ってWebSocketに関する短期連載を担当させていただきます。 私を含めたNew Bambooの面々(我々は自分たちのことをBambinoと呼んでいます)がWebSocketになぜ興味を持ったかということからはじまり、実際にクラウドサービスを始めるまでにいたったストーリーをお話ししたいと思います。そのストーリーを通じて、WebSocketが切り開く「リアルタイムWeb」な世界への可能性や技術的課題を皆さんと共有できればと思っています。

    WebSocketで目指せ“リアルタイムWeb”!第1回 node.jsの衝撃とWebSocketが拓く未来 - @IT
  • RAID基礎辞典 − @IT

    [基礎解説] RAID基礎辞典 1.RAID 0とRAID 1とは デジタルアドバンテージ 小林 章彦 2010/10/21 インターネットの普及などによってサーバやクライアントPCで取り扱うデータの容量は増え、種類は多様化している。毎日やり取りされる電子メールの数はうなぎのぼりに増えているし、以前は文章とグラフ程度であった営業用資料に、いまではデジタル・カメラで撮影した製品写真などを貼り込むことも珍しくなくなってきた。また、プレゼンテーションで動画が使われるといった例も増えてきており、こうした流れはさらに広がっていくことが予想される。 当然、それらのデータを保存するディスク・システムも大容量化している。特にここ数年、ハードディスクの大容量化が進んでおり、クライアントPCでも1Tbytesや2Tbytesといった、一昔前ならば大規模なサーバでしか搭載されていなかったような容量のハードディス

    kicyon
    kicyon 2010/10/22
  • Apacheパフォーマンス・チューニングのポイント

    現状の測定(ベンチマーク)と結果の着眼点 ここからはApacheに着目して、パフォーマンス・チューニングのための準備を行う。チューニングするに当たって、まず現状を十分に分析し、具体的な目標を定めることから始めたい。目標をどれだけ具体化するかはともかくとしても、現状を数値的に知りもせずに、漠然と「遅い遅い」と騒いでいても仕方がない。 現状を数値的にとらえるにはツールが必要となる。いわゆるベンチマーク・ツールだ。Apacheには、標準で「ab」(Apache Bench)というツールが付属している。abの構文は、

    Apacheパフォーマンス・チューニングのポイント
  • Apacheパフォーマンス・チューニングのポイント

    Apacheをチューニングすることにより、Webサイトのパフォーマンスをより向上させることができる。しかし、その前に何をチューニングすべきなのかを見極める必要がある。 この連載もいよいよ大詰めとなった。長く続けている間にApache 2.0のリリースまで迎えてしまったが、筆者が思い付く限りのことを紹介してきたつもりだ。 最後に残したテーマは、「パフォーマンス・チューニング」である。より少ない資源でより高速なレスポンスを確保するために、パフォーマンス・チューニングは欠かせない。これは、あらゆるソフトウェアに当てはまる。設定が一通りできるようになればApacheを問題なく動作させることが可能だが、それをより効率よく動作させられなくては不十分だ。 サイトの読者であればよくご存じのことと思うが、パフォーマンスのチューニングは非常に奥深いものである。語り尽くすことなどできないが、皆さんの一助となれ

    Apacheパフォーマンス・チューニングのポイント
  • LAMP経験者のニーズ高し。ポテンシャル採用も

    不況で冷え込んでいたIT業界転職市場に、回復の兆しが見え始めている。だが、業種や職種によって採用数や条件に大きな差異が生まれている。転職市場の動向を追い、自身のキャリア戦略立案に生かしてほしい。 IT業界転職市場は、上昇気流に乗っている。 格的な回復を果たしたとはいえないまでも、業界外からの採用や、若手ポテンシャル層の採用が始まるなど、求職者にとってうれしい傾向が見られる。 特に、新規事業やWeb・モバイルサイトの新規立ち上げに伴う募集が増えるなど、企業各社の「攻め」の姿勢が印象深い。多くの企業が、ソーシャルアプリや新しいプラットフォーム(スマートフォン、iPadなど)へ参入するための新たな人材確保に力を入れている。 その立役者は、なんといってもソーシャルアプリ/ソーシャルメディアだろう。IT転職市場はソーシャルアプリ関連の求人で賑わい、Web/モバイル業界では採用競争が起こってい

    LAMP経験者のニーズ高し。ポテンシャル採用も
    kicyon
    kicyon 2010/06/22
  • Apacheパフォーマンス・チューニングの実践

    セッションのチューニング ここまでのチューニングは、必要か必要でないかを判断すればよく、手探りで最適な値を探し出すというものではなかった。しかし、これから紹介する「セッションのチューニング」はそうもいかない。ある程度の見通しは立てられても、最適な答えを見つけるのには手間がかかってしまう。 KeepAliveとセッションの切断 セッションのチューニングの手始めとして、「KeepAlive」について考えることにしよう。KeepAliveはHTTP/1.1から用意されたもので、クライアントとの接続を保持する仕組みである。HTTPは「ステートレス・プロトコル」と呼ばれるとおり、1回の要求(リクエスト)ごとに接続が切断される。しかし、今日では1つのWebページを表示するために複数のファイルが必要となる場合がほとんどなので、1リクエストごとに接続を切っていたのでは効率が悪い。そこで考え出されたのがKe

    Apacheパフォーマンス・チューニングの実践
  • メール/Webサーバを効率的に動かすゾーン設定

    メールサーバやWebサーバとDNSは密接につながっている。ゾーンファイルの書き方1つで、それらを効率化することも可能だ。今回は、これらのサーバとBINDの関係に着目して、ゾーン設定の妙を学んでいただきたい。(編集局) BIND 9運用の要はnamed.confファイルと各ゾーンファイル(第2回 すべての基礎、マスター・ゾーンサーバの設定参照)の設定にあります。これらのファイルの記述次第で、あなたのサイトはより快適なものにも、手を煩わせるものにもなり得ます。 今回から数回にわたり、これらの設定ファイルを詳しく見ていきます。今回はその第1弾として、メールやWebサーバを抱えたサイトのケースを紹介しましょう。 BIND 9とWebサーバ 最初に、BIND 9とWebサーバの関係という視点から、ゾーンファイルの設定を見ていきましょう。 CNAMEの利用 CNAME(Canonical Name)は

    メール/Webサーバを効率的に動かすゾーン設定
    kicyon
    kicyon 2010/06/21
  • Microsoft発のjQueryグローバリゼーション・プラグイン - @IT

    記事は、Microsoft社副社長であり、ASP.NETやSilverlightなどの開発チームを率いるScott Guthrie氏のブログを翻訳したものです。氏の許可を得て転載しています。 先月、MicrosoftがどのようにjQueryへコード寄稿を開始したのか、そして、jQueryテンプレートとデータ・リンキングのサポートのために行った最初のコード寄稿のいくつかについてブログ投稿しました。 日(2009/6/10)は、jQueryグローバリゼーション・プラグインをリリースし、これによりJavaScriptアプリケーションにグローバリゼーション・サポートが追加できるようになりました。このプラグインには、ゲール語、フリジア語、ハンガリー語、日語などから、カナダ英語まで、350以上のカルチャに対するグローバリゼーション情報が含まれています。このプラグインをオープンソースとして、コ

    kicyon
    kicyon 2010/06/21
  • バーチャルドメインにおけるqmailの運用

    バーチャルドメインを使えば、複数のホストやドメインで提供していたサービスを1台に集約して導入コストを下げることができます。運用面でも、バージョンアップやセキュリティ対策といった管理の手間を抑えられます。もちろん、サーバに障害が発生した場合は全ドメインのサービスが停止する危険性も含んでいるため、メリットばかりではありません。とはいえ、RAIDや冗長化電源などが比較的容易に導入できるようになった昨今では、1ドメインに1ホストを割り当てるより、障害に強い1台のサーバで複数のドメインを運用する方がより現実的です。 また、2001年から始まったjp汎用ドメインの解禁で、1社・1ドメインどころか1プロジェクト・1ドメインといった使用方法も増えてくることでしょう。Webだけでなく、メールサービスもバーチャルドメインの恩恵を受けられるようにしてみましょう。

    バーチャルドメインにおけるqmailの運用
    kicyon
    kicyon 2010/06/18
  • メール/Webサーバを効率的に動かすゾーン設定

    BIND 9とメールサーバ 続いて、メールサーバとBIND 9の相互運用を考えてみましょう。 MXについて user-b@example-b.jpにメールが送信される仕組みを見てみましょう。まずBさんあてのメールを受け取ったメールサーバmail-aは、example-b.jpドメインに対するメール送信先をDNSサーバdns-aを使って検索します。dns-aはドメインツリーをたどり、example-b.jpドメインをつかさどるDNSサーバdns-bにたどり着き、example-b.jpドメインに対するメール送信先を問い合わせます。dns-bはゾーンファイル中のMXレコードに登録されているホスト名を返します。dns-aは受け取ったホスト名を再度dns-bに問い合わせてIPアドレスを取得し、mail-aに結果を返してメールの送信先を決定します。 以上の手続きが短時間に行われ、Aさんからのメールが

    メール/Webサーバを効率的に動かすゾーン設定
  • すべての基礎、マスター・ゾーンサーバの設定

    すべての基礎、マスター・ゾーンサーバの設定:実用 BIND 9で作るDNSサーバ(2)(2/3 ページ) ゾーンファイルの作成 次に、/var/named下に/etc/named.confで記述したすべてのゾーンファイルを作成します。 named.ca キャッシュサーバとして動作するためには、ルートサーバがどこにあるのかを正しく知っておく必要があります。そのためのゾーンファイルをftp://ftp.rs.internic.net/domain/named.rootから入手し、/var/named/named.caとして保存します。 ルートサーバは不変であると思われがちですが、頻繁でないにしろ更新されることがあります。2002年11月にはDoS攻撃への対策から、5年ぶりにルートサーバに変更が加えられました。BINDはnamed起動時にルートサーバに接続し、自動的に最新のルートサーバ一覧情報に

    すべての基礎、マスター・ゾーンサーバの設定
  • サブドメインの運用と委任

    こうすることで、jpゾーンを管理するDNSサーバは、example.jpドメインのホスト情報までは知らなくても、どのDNSサーバに問い合わせれば答えが得られるかを指し示すことができます。問い合わせを行うリゾルバは、問い合わせ先DNSを変更して再度ホスト情報の問い合わせを行います。 ゾーン情報(例ではexample.jp)を持つDNSサーバのアドレスやホスト名を、その上位ドメイン(例ではjp)のゾーン情報を管理するDNSサーバに登録する手順こそが「委任」(delegation)です。 上位ドメインを管理する側(以降「親」)は、その下位ドメイン(以下「子」)のゾーン情報をすべて持たず、子のゾーン情報が得られるDNSサーバのみを把握しています。つまり、「子ゾーンに関する情報は××DNSサーバに聞いてくれ」と、権限を委譲するわけです。これにより、親サーバが子ゾーンの情報であふれることなく、また子サ

    サブドメインの運用と委任
  • ext3とトランザクション処理

    kjournaldによるコミットとチェックポイント ext3では、トランザクションのコミット操作はカーネルスレッドである「kjournald」によって定期的に行われる。kjournaldは、Linuxに実装されているダイナミックタイマと呼ばれる時間管理のためのタイマ機構を利用し、これらのコミット操作が時系列に沿って実行されるようにする。 kjournaldは、カーネルから起動されるとインターバルが5秒ごとに実行されるタイマリストを作成する。個々のトランザクションは、このタイマリストに現在の時刻+5秒後にコミットが実行されるようにタイマをセットする。kjournaldは5秒置きに起動し、コミットが予定されているトランザクションを登録していた場合は、そのトランザクションをコミットする。ext3では、コミットとチェックポイントはkjournaldの中に一緒に実装されており、コミットが完了するとチ

    ext3とトランザクション処理
    kicyon
    kicyon 2010/06/16