タグ

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

  • 第1回 PSGI/Plack―フレームワークとサーバをつなぐエンジン (2) | gihyo.jp

    Plack─⁠─PSGIユーティリティ PSGIのおかげで、フレームワークはCGIやFastCGI、mod_perlといった環境の差異を吸収するためのコードを書く必要はなくなり、PSGIのインタフェースだけを実行すればよくなりました。実際に多くのフレームワークがすでにPSGIをサポートしていますが、さて、そうしたアプリケーションをどうやって動かせばよいのでしょうか。 Apacheなど既存のWebサーバでPSGIアプリケーションを動かすには、CGI、FastCGI、mod_perlなどのインタフェースをPSGIに変換する必要があります。また、PSGIをネイティブで実行できるPerlベースのHTTPサーバもほしいところです。 Plackはそうした要件を満たすためのユーティリティで、リファレンス実装としてのPSGIサーバやそれらへのアダプタ、周辺ライブラリや後述するミドルウェアが含まれています。

    第1回 PSGI/Plack―フレームワークとサーバをつなぐエンジン (2) | gihyo.jp
    toru_toru
    toru_toru 2010/06/02
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
    toru_toru
    toru_toru 2010/05/01
  • 第4回 エンジニア不足を解消しよう | gihyo.jp

    今回は、「⁠心得」とはちょっと違うような気もしますが、インフラエンジニアを取りまく環境について、ちょっと書いてみたいと思います。 インフラエンジニア不足の原理 筆者が思うに、インフラエンジニアというのは、常に絶対的な不足に悩まされています。それにはさまざまな理由がありそうです。減点法による評価が多い、教育する機会がない、教育するつもりがない、イメージが良くない…などです。 ネットワークにしてもサーバにしても、何かヘマした瞬間にトラブルが起こることがあります。init 6と叩くつもりがinit 0と叩いたり、ルーティングを間違えたりフィルタを間違えたりした瞬間にリモートから何もできない状態に陥ってダッシュする状況は、インフラエンジニアなら誰しも経験しているのではないでしょうか。 運用というのは、うまく動いていてあたりまえ、障害が起こると「何やってんだー!」と言われる世界なので、どうしても経験

    第4回 エンジニア不足を解消しよう | gihyo.jp
    toru_toru
    toru_toru 2010/03/01
    起票
  • 達人が語る、インフラエンジニアの心得 記事一覧 | gihyo.jp

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

    達人が語る、インフラエンジニアの心得 記事一覧 | gihyo.jp
    toru_toru
    toru_toru 2009/12/11
  • #20 (株)ミクシィ 平林幹雄、長野雅広、津久井玲宏、大窪聡 | gihyo.jp

    今回、弾さんが訪問したのは、(⁠株)ミクシィ。検索エンジン開発からアプリケーション運用まで、ミクシィを作り上げ、支えている4人のエンジニアの方々に逢ってきました。 (左から)津久井玲宏氏、平林幹雄氏、小飼弾氏、長野雅広氏、大窪聡氏(撮影:平野正樹) 自己紹介 弾:では、さっそく自己紹介から。 津久井(以下、津⁠)⁠:mixiアプリケーション開発グループマネージャーの津久井です。仕事内容としては、マネジメントが主です。 弾:ちらっと紹介しておくと、かつて僕がマネージャーで津久井さんにコードを書いてもらったことがあります。大昔の話です(笑)(⁠注1⁠)⁠。 平林(以下、平⁠)⁠:平林です。研究開発グループのマネージャーをしていまして、研究開発グループ自体は僕を含めて5人です。仕事としては、マネジメントは2~3割くらいに抑えて、あとはだいたいコードを書いています。 長野(以下、長⁠)⁠:システム

    #20 (株)ミクシィ 平林幹雄、長野雅広、津久井玲宏、大窪聡 | gihyo.jp
    toru_toru
    toru_toru 2009/09/24
  • 第1回 memcached 1.4、基本の基本 | gihyo.jp

    今回は、1.4になってアップデートされた新機能を中心に紹介します。 memcachedとは? memcachedとは、主にデータベースへの負荷を下げ、かつWebアプリケーションのスケーラビリティをコストパフォーマンス良く向上させる高性能な分散キャッシュサーバです。memcachedの基や概要に関しては、以前ミクシィ運用グループの長野と執筆した「memcachedを知り尽くす」をご覧ください。 memcached 1.4の特徴 1.4、5つの特徴 memcached 1.4の大きなニュースの1つはバイナリプロトコルの正式導入です。また、他にも色々と嬉しい機能や改修が施されています。詳しくは1.4のリリースノートに記述されていますが、要約すると以下の5点が上げられます。 バイナリプロトコルの正式導入 パフォーマンス向上 統計システムの強化 報告されたバグの修正 テストの強化 入手先 memc

    第1回 memcached 1.4、基本の基本 | gihyo.jp
    toru_toru
    toru_toru 2009/09/04
  • 第64回 統計の数学 相関係数を導く [前編] | gihyo.jp

    前回は相関係数とは何か、大変大雑把に紹介し、計算手順をJava言語で実装、テストするところまで行いました。今回は、相関係数というものがどういう筋道で導かれたものなのか、丁寧に追っていきます。途中の数式を極力省かずにたどります。全て高校数学までの内容です。 今回、そして次回の前後編は、まるっきり数学ばかりです。⁠”Javaでコンピュータ数学⁠”の看板に偽りあり?とおっしゃらず、だまされたと思って取り組んでみてください。プログラミングを専門としていれば、少なからず「効率の良い計算」を必要とする場面があります。すると、そのときに使う数学は、ちょうど今回出てくるような「合計」や「平均」と似た操作を上手に組み合わせることが多いのです。コンピュータは「単純なんだけれども、人の手と頭ではとても処理できないような、たくさんのデータを処理すること」が最も得意な機械だからです。 これから出てくる、「⁠数式のこ

    第64回 統計の数学 相関係数を導く [前編] | gihyo.jp
    toru_toru
    toru_toru 2009/08/18
  • 第2回 memcachedのメモリストレージを理解する | gihyo.jp

    株式会社ミクシィ 研究開発グループの前坂です。前回の記事でmemcachedは分散に長けた高速なキャッシュサーバであることが紹介されました。今回はmemcachedの内部構造がどう実装されているのか、そしてメモリがどう管理されているのかをご紹介します。また、memcachedの内部構造の事情による弱点も紹介します。 メモリを整理して再利用するSlab Allocationメカニズム 昨今のmemcachedはデフォルトでSlab Allocatorというメカニズムを使ってメモリの確保・管理を行っています。このメカニズムが登場する以前のメモリ確保の戦略は、単純にすべてのレコードに対してmallocとfreeを行うといったものでした。しがしながら、このアプローチではメモリにフラグメンテーション(断片化)を発生させてしまい、OSのメモリマネージャに負荷をかけ、最悪の場合だとmemcachedのプ

    第2回 memcachedのメモリストレージを理解する | gihyo.jp
    toru_toru
    toru_toru 2009/01/09
  • Sunの8コアマシンで、45Gバイトのログの解析を各プログラミング言語でベンチマーク対決する「Wide Finder」 | gihyo.jp

    濃縮還元オレンジニュース Sunの8コアマシンで、45Gバイトのログの解析を各プログラミング言語でベンチマーク対決する「Wide Finder」 Sun Micro-sys-temsによる実験プロジェクトです。「⁠マルチコアマシン上で最もパフォーマンスの高いプログラミングを行うには?」という目的により、Sun Fire T2000という8つのCPUを積んだマシン上で、45Gバイト、2億1,800万行ものアクセスログファイルを解析するプログラムをさまざまな言語で実装し、コード行数や計測時間を競います。 ベンチマーク結果が掲載されており、現在最も速いのはC++で537行で実装されたもので、4分41秒かかっています。対して最も遅いのは78行のRubyコードで実装したもので、25時間25分もの時間を要しています。 ベンチマーク結果のページには各実装コードを参照するリンクがあります。たとえばRuby

    Sunの8コアマシンで、45Gバイトのログの解析を各プログラミング言語でベンチマーク対決する「Wide Finder」 | gihyo.jp
    toru_toru
    toru_toru 2008/12/25
  • 第3回 chumbyを軽くハックしてみよう | gihyo.jp

    shibuya.chumbiesのoverlastです。 前回の原稿が掲載された頃にニュースになっていましたが、chumbyの国内販売が決まりました! ちなみに発売日や定価は、まだ未定ですが、日クレジットカードで購入できるとしたら素敵です。chumbyのような、安価な割に自由度が高いガジェットは、あまり無いので早く発売して欲しいです。 さて、今回のテーマは「chumbyをwidgetを作らないでハックする」です。簡単な操作を繰り返すことで、chumbyのことを少し深く知ってみたり、便利に使えるようにしてみましょう。 前半は私が担当します。chumbyの裏メニューを使って、パソコンからchumbyにログインしてみます。chumbyを内側から覗いてみることで、できそうなことを考えてみたいと思います。 後半は、私と同じくshibuya.chumbiesのAsamaさんが担当します。既に公開さ

    第3回 chumbyを軽くハックしてみよう | gihyo.jp
  • 第18回 Puppetのスケーラビリティ向上テクニック | gihyo.jp

    実はPuppetはそれほどスケーラビリティに優れていません。管理する設定の量や、ファイルサーバの転送量などによっても異なりますが、1CPU/2GBメモリのPuppetサーバ1台で、50台から100台のPuppetクライアントを管理するのが限界と言われています。 最終回となる今回は、そんなPuppetのスケーラビリティを向上するためのテクニックについて解説します。 単一構成でのスケーラビリティ向上 Puppetではウェブサーバとして、Rubyに標準で含まれているWEBrickが利用されていますが、これをMongrelに変更することによってパフォーマンスの向上が見込めます。WEBrickの代わりにMongrelを利用する場合は、以下のようにpuppetmasterdのコマンドオプションでservertypeにmongrelを指定するだけです(Mongrelのインストールは別途必要です⁠)⁠。

    第18回 Puppetのスケーラビリティ向上テクニック | gihyo.jp
  • 第1回 memcachedの基本 | gihyo.jp

    株式会社ミクシィ 開発部 システム運用グループの長野です。普段はミクシィのアプリケーション運用を担当しております。今回から数回にわたり、最近Webアプリケーションのスケーラビリティの分野で話題になっているmemcachedについて、弊社開発部 研究開発グループの前坂とともに、使い方や内部構造、運用について解説させて頂きます。 memcachedとは memcachedは、LiveJournalを運営していたDanga Interactive社で、Brad Fitzpatrick氏が中心となって開発されたソフトウェアです。現在ではmixiやはてな、Facebook、Vox、LiveJournalなど、さまざまなサービスでWebアプリケーションのスケーラビリティを向上させる重要な要素になっています。 多くのWebアプリケーションは、RDBMSにデータを格納し、アプリケーションサーバでそのデータ

    第1回 memcachedの基本 | gihyo.jp
  • 第2回 Firebugによるデバッグの基本、Console APIとその活用 | gihyo.jp

    さて、前回はインストールからFirebugのタブの基的な部分について紹介をしてきました。今回は、Firebugに実装されているConsole APIの紹介と、Console APIを利用したデバッグ手法について解説していきます。 Firebugで利用できるAPI Firebugには、デバッグに活用できる2つのAPIが実装されています。今回は、その2つあるAPIのうちConsole APIについて解説していきます。 Console API Console APIはFirebugのタブだけでなく、コンテンツ側のJavaScriptから呼び出すことのできるAPIです。デバッグのために便利な関数があらかじめたくさん用意されています。これらの関数を以下に列挙しますので、目を通してください。 console.log(object[, object, ...]) 渡された全てのオブジェクトをconso

    第2回 Firebugによるデバッグの基本、Console APIとその活用 | gihyo.jp
  • 第2回 Ruby編 | gihyo.jp

    インストール RubyGemsをインストールしてから「gem install rbyaml」でインストールしてください。 使い方 使い方は、クラス名がYAMLでなくRbYAMLとなっている点以外はSyckとほぼ同じです(リスト8⁠)⁠。 リスト8 RbYAMLの使い方(ex-rbyaml1.rb) require 'rubygems' # RubyGemsを使ってインストールした場合 require 'rbyaml' ## YAMLドキュメントを読み込む str = File.read('example.yaml') data = RbYAML.load(str) # 引数は文字列またはI/O data = RbYAML.load_file('example.yaml') # 引数はファイル名 ## YAMLストリームを読み込む File.open('example.yaml') do |

    第2回 Ruby編 | gihyo.jp
    toru_toru
    toru_toru 2008/04/14
  • 連載:オープンソースなシステム自動管理ツール Puppet|gihyo.jp … 技術評論社

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

    連載:オープンソースなシステム自動管理ツール Puppet|gihyo.jp … 技術評論社
    toru_toru
    toru_toru 2008/04/09
  • 第6回 OpenSSHの公開鍵をLDAPで管理 | gihyo.jp

    公開鍵管理の概要 読者の皆さんの多くはリモートメンテナンスのために、各サーバでsshデーモンを動作させているはずです。しかしtelnetではなくsshにすればそれだけで安心安全、というわけではありません。共通鍵認証ではそれぞれの通信自体は暗号化されているとはいえ、近年では総当たり攻撃のターゲットとなっているケースも非常に多くセキュリティ的に安心できるものではないためです。皆さんはちゃんとRSAやDSAによる公開鍵認証を利用されていますか? 公開鍵認証のメリットは、共通鍵認証と比較して、より安全な認証を実現することができる点にあります。その一方、クライアント側には秘密鍵ファイルと多くの場合はパスフレーズが、サーバ側には公開鍵ファイルが必要になるため、デメリットとしてユーザ数が多いとそれらの管理も煩雑になることが挙げられます。 たとえば管理対象のサーバが100台あるとすれば、あるユーザの入社時

    第6回 OpenSSHの公開鍵をLDAPで管理 | gihyo.jp
  • prototype.jsを読み解く:第1回 Prototypeライブラリ(1〜197行目)|gihyo.jp

    他のライブラリや、自分のコードと共存させるときは、これらの名前と衝突しないように気をつける必要があります。同じ名前を使ってしまうと、コードがロードされた順番によって挙動が変わる、というようなわかりにくい問題が発生してしまう場合が出てきます。 オブジェクト、クラスの使われ方 ライブラリ内では、上記の名前空間は大きく分けて以下のような使われ形をしています。 その下に別のオブジェクトを入れるための親名前空間として使う Class.create()を使って Prototypeライブラリ風のクラスとして定義する Object.extend()を使って他のクラス、オブジェクトから継承されることを前提とする関数を集める コードを簡潔に記述する為に短い名前の関数として使う 特に、Object.extend()を使って継承を実現している箇所が多く、最終的にどのオブジェクト・クラスにどのメソッドが定義されてい

    prototype.jsを読み解く:第1回 Prototypeライブラリ(1〜197行目)|gihyo.jp
  • Sysadmin Toolbox:第1回 RDBMSが使えるPowerDNS|gihyo.jp

    はじめに 以前はDNSサーバと言えば、BINDとdjbdnsくらいしかありませんでしたが、現在ではさまざまなDNSサーバが利用できるようになりました。 MaraDNS NSD PowerDNS DNSはサイト固有の要件が増えることが多く、またテキストファイルによる管理では不都合もなにかとでてきます。このため、RDBMSでレコードを管理できると便利です。BINDをRDBMSに対応させるパッチも存在します。 PowerDNSとは ここでは、RDBMSを利用でき、容易な管理をサポートする機能が豊富なPowerDNSを紹介します。 PowerDNSは豊富なバックエンドをサポートするDNSサーバです。コンテンツDNSサーバとキャッシュDNSサーバの両方をサポートしており、それぞれは別のプロセスとして実行されます。すでに大規模なサービスプロバイダでも採用されており、実績も十分あるとされています。バック

    Sysadmin Toolbox:第1回 RDBMSが使えるPowerDNS|gihyo.jp
    toru_toru
    toru_toru 2007/08/21
  • はてなの伊藤直也氏による「あるWebプログラマーの作業環境 前編」(Screen、Emacsの紹介) | gihyo.jp

    この記事は『オープンソースマガジン』(⁠ソフトバンククリエイティブ)の過去記事を再構成したものです。coLinuxを使ったUNIX環境、マルチタブ風に複数の仮想端末を起動できるGNU screen、通の中では最強と言われているエディタEmacsを紹介しています。もちろんこの記事を読むだけで各々のツールが使えるようになるわけではありませんが、今まで使ったことのない人にとってはそのツールのよさが、使ったことのある人には「こんな機能もあったのか」と新たな発見ができる内容になっています。 伊藤氏の1日のタイムスケジュールが垣間見れる後編と合わせて読んでみてください。 URL:http://www.itmedia.co.jp/enterprise/articles/0703/07/news017.html

    はてなの伊藤直也氏による「あるWebプログラマーの作業環境 前編」(Screen、Emacsの紹介) | gihyo.jp
    toru_toru
    toru_toru 2007/04/27
  • #5 (株)ライブドア 池邉智洋/谷口公一/ma.la(前編) 「そろそろライブドア事件について一言いっておくか」の「(中略)」にあったこと|gihyo.jp

    小飼弾のアルファギークに逢いたい♥ #5(⁠株⁠)ライブドア 池邉智洋/谷口公一/ma.la(前編) 「そろそろライブドア事件について一言いっておくか」の「(中略)」にあったこと 今回、弾さんが逢いに行ったのは、(⁠株)ライブドアでRSSリーダー「livedoor Reader⁠」⁠、ソーシャルネットワーキングサービス(SNS)「⁠livedoor フレパ」をはじめさまざまなコンテンツを持つlivedoorのポータルを開発している、池邉智洋さん、谷口公一さん、ma.laさん。弾さんがライブドアの前身、オン・ザ・エッヂ時代にCTOを務めた古巣は、すでに面影もなく新しい時代を築いているのかそれとも…。 編集部注) 対談は2007年1月に行われたものです。 撮影:武田康宏 開発体制 弾:まずは自己紹介から。 池邉(以下、池⁠)⁠:ポータルを展開しているメディア事業部に、エンジニア

    #5 (株)ライブドア 池邉智洋/谷口公一/ma.la(前編) 「そろそろライブドア事件について一言いっておくか」の「(中略)」にあったこと|gihyo.jp
    toru_toru
    toru_toru 2007/04/17
  • 1