タグ

ブックマーク / thinkit.co.jp (8)

  • [Think IT] 第4回:OpenIDの仕様を改めて復習してみよう (1/3)

    OpenIDの仕様を改めて復習してみよう 連載ではPHPによるOpenIDのサンプルを使って、実際に「Consumer」や「Identity Provider(以下、IdP)」を動かしながら、その仕組みについて解説してきました。かなり駆け足で紹介してきたため、今回はこれまでの解説を踏まえながら改めてOpenIDについておさらいします。 OpenIDでIdPが受け付けるアクセスには「associate」と「checkid_immediate」「checkid_setup」「check_authentication」の4つのモードがあります。これらは認証のたびにすべてが呼び出されるのではなく、状況によって選択されます。 まず「associate」では、アソシエーションハンドルとその有効期限、共通暗号鍵がIdPからConsumerに渡されます。アソシエーションハンドルは有効期限の間は再利用可能

    kokogiko
    kokogiko 2011/07/06
    この図だけでみると、dumbモードでcheck_authenticationする方法だと、スマホAppからでも実現できそう感があるんだけど…いまだにライブラリがないという事は、IdPがRPのホスト名チェックとかしてるとかで実現無理なんだろうか
  • NOSQLの新顔、分散KVS「okuyama」の機能

    NOSQLについて解説した前回の記事は、いかがだったでしょうか。今後のアプリケーションでは、増え続けるデータを扱うことが非常に多くなると思います。前回の記事が、こうしたケースに適した新たなストレージの1つとして、NOSQLを理解するきっかけになっていたら幸いです。 連載2回目の今回は、NOSQLの1つである「okuyama」の全体概要と、機能的な特徴を紹介します。 1. 「okuyama」の概要 okuyamaは、まだ聞きなれない方も多いかと思いますが、筆者が開発している分散キー・バリュー・ストアです。2009年12月ごろから開発を始めました。現在はSourceforge.jpにて公開しています。もともとは学習を兼ねて作成したため、一部のログ・ライブラリなどを除き、すべて1から実装しました。2010年1月にファースト・リリースを行い、現在はバージョン0.8.6となっています。 以降は、ok

    kokogiko
    kokogiko 2011/02/15
  • Active Recordのその先へ ~RailsでMongoDBを使う~

    3. MongoDBのドキュメント操作 MongoDBのドキュメントに対してマップするモデルを作成し、Railsアプリケーションからドキュメントを操作してみましょう。リスト3のような内容のドキュメントを作るための、モデル・クラスを作成します。 リスト3: MongoDBのドキュメントの例 MongoDBは、スキーマレスのデータベースです。MongoDB側に、あらかじめ何かを定義することはありません。実際には、Railsのクラスで定義した内容に従って、構造が決定されます。 リスト3のドキュメントにマップするクラスを、Personとしましょう。Railsのルールに従い、MongoDBには、複数形のpeopleがコレクションとして定義されます。MongoDBでは、ドキュメントの集合をコレクションと呼びます。 mongoidを使うと、モデルを作成するジェネレータが、mongoidを使うように置き換

    kokogiko
    kokogiko 2010/11/17
  • クラウドの力を引き出す分散データベース

    はじめに 記事では、プライベート・クラウドなどで実際に利用可能な分散型データベースの一例として、Apache Cassandraを紹介します。 機能的な特徴やアーキテクチャの概要だけでなく、運用する上で必要となるクラスタとノードの操作方法(ノードの追加/削除、バックアップなど)についても説明します。 Apache Cassandraは、Amazon Dynamoと Google BigTableの特徴を統合した分散型データベースと言われています。クラウド向け分散データベースの事例を参照していただければ、より特徴を理解しやすくなると思います。 Apache Cassandraとは Apache Cassandraは、Amazon Dynamoの特徴である“耐障害性の高さやデータの分散保持を考慮した分散特性”と、 Google BigTableの特徴である“ColumnFamilyをベースと

    kokogiko
    kokogiko 2010/06/17
  • [Think IT] 第2回:性能検証!速いのはどっち? (1/3) lighttpdとApacheの処理性能を比較

    lighttpdとApacheの処理性能を比較 「第1回:lighttpdを知っていますか?(http://www.thinkit.co.jp/article/119/1/)」では、軽量Webサーバーであるlighttpdの概要や特徴、機能面の紹介、Apacheとの違いを簡単に解説しました。 その中で、lighttpdは一般的に軽量で高性能と言われていることについて触れましたが、今回は実際にベンチマークツールを使用して、lighttpdがApacheと比較して当に性能が良いのか、どのくらい性能差があるのかを検証していきます。 検証環境の構成 図1の上に今回の性能試験で利用するサーバーのスペックを、下に検証環境を示します。サーバー機器としては一般的なスペックのものを用意しました。このサーバーの上位にあるスイッチングハブに、クライアントとして、ほぼ同スペックの機器を同一ネットワーク内に接続し

    kokogiko
    kokogiko 2009/05/08
  • [ThinkIT]MapServerとは

    これまでWeb上に地図を表示するには、商用の地図配信業者に依頼したり、限定されたライセンス制約のもと、Google MapsなどのWeb サービスを使う以外に有効な選択肢はありませんでした。この連載では、上記よりもより柔軟でカスタマイズ性に富むMapServerソフトウェアを使った、WebGISアプリケーションの構築手法について学んでいきます。 突然ですが、Google Mapsを見たことがあるでしょうか。もしないというのであれば、この記事を読む前にご覧になってください。この記事で紹介するMapServerはGoogle MapsのようなWebGISといわれるシステムを作成する際に絶対に必要となる技術です。 MapServerをどの部分で使用するのかというと、ベクトルデータといわれる点や線、面の数値情報を画像データに変換するために使用します。地図画像の作成なんて専門の会社でなければできない

  • [ThinkIT] 第1回:5分でわかるXAMPPの魅力 (1/3)

    最近、Webアプリケーションシステムを構築する際に「LAMPで行う」という話をよく耳にします。LAMPはWebアプリケーション構築の際に容易に導入を進められることから、大企業でも盛んに用いられるようになってきました。 LAMPとは「Linux」「Apache」「MySQL」「PHP/Perl/Python」の頭文字をつなげたものです。日ではWebアプリケーションというとまだまだJavaが主流ですが、世界を見渡すとオープンソースなWebアプリケーションは、ほぼLAMPが独占しているといっても過言ではありません。 フリーコマースの「osCommerce」やポータルサイトの「Xoops」をはじめとして、SFAやEIP、CMS、ERPなど、ほとんどのアプリケーションがLAMP上で動作することを前提として作られています。極端な言い方になりますが、企業の必要なアプリケーションのすべてをLAMPで運用

  • ベイズの定理でプロジェクトの失敗を予測

    データを確率の枠組みでとらえる「ベイズの定理」 今回は「ベイズの定理」を概説し、この定理をプロジェクト管理にどのように利用するのか説明します。「ベイズの定理」は確率論や統計学において知られている定理であり、さまざまな事象に関するデータを確率論の枠組みで取り扱うことができるという点で有用な定理です。 確率論の枠組みでデータをとらえることができるという点は、確率や統計の知識のある方にとっては特に大きな利点であるように思えないと思いますが、これがまさにベイズの定理の特徴であるということを説明します。 なおベイズの定理はさまざまな応用があります。この定理を使った内容を総じて「ベイズ的」もしくは「ベイジアン」(Bayesian)と呼びます。今回は、ページ数の都合もあり、ベイズ的意志決定に焦点を当て、特にプロジェクト管理における課題を例として説明していきます。 統計を用いた意思決定 ベイズ的意思決定の

  • 1