タグ

2008年2月14日のブックマーク (12件)

  • Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる

    Linux は fork で子プロセスを作成した場合、親の仮想メモリ空間の内容を子へコピーする必要があります。しかしまともに全空間をコピーしていたのでは fork のコストが高くなってしまいますし、子が親と同じようなプロセスとして動作し続ける場合は、内容の重複したページが多数できてしまい、効率がよくありません。 そこで、Linux の仮想メモリは、メモリ空間を舐めてコピーするのではなく、はじめは親子でメモリ領域を共有しておいて、書き込みがあった時点で、その書き込みのあったページだけを親子で個別に持つという仕組みでこの問題を回避します。Copy-On-Write (CoW) と呼ばれる戦略です。共有メモリページは、親子それぞれの仮想メモリ空間を同一の物理メモリにマッピングすることで実現されます。より詳しくは コピーオンライト - Wikipedia などを参照してください。 この CoW に

    Linux のプロセスが Copy on Write で共有しているメモリのサイズを調べる
  • ソフトウェア/窓替え

    ver.0.7.7.16 (Vectorへ移動します) -- 2007/12/17 公開版の変更内容 (ver.0.7.5.36 → 0.7.7.16) は こちら テスト版からの変更内容 (ver.0.7.7.14 → 0.7.7.16) は こちら Vector公開前のテスト版を置いています。 テスト版のため、readme.txt不十分、バグが含まれてることがあります。 また、テスト版の仕様は公開時には変更する可能性もあります。ご了承の上ご使用ください。 作者環境でもウィルス検査は行っていますが、 ダウンロードファイルはウィルス検査を実施ください。 ある程度安定したものを求める方は、0.7.7.X系(前回までのバージョン)をご使用下さい。 ver.0.8.3.9 869KB (当サイトからの直接ダウンロードです) -- 2008/07/29 フォント指定を可能にしました。

  • livedoor Techブログ : livedoor Blog モバイルのサーバ構成

    こんにちは、栗原です。 今回はlivedoor Blog モバイルのサーバ構成についてご紹介しようと思います。 日でも最大規模のブログサービスのモバイルサイトがどのようなサーバ構成で稼動しているのか、またその構成を構築していく上で苦労した点や今後どのようにして行こうと考えているかについても説明できたらと思います。 サーバ構成 まずは現在のlivedoor Blog モバイルの内部構成について簡単に説明したいと思います。 livedoor Blog モバイルでは、大きく分けて5種類のサーバ群が稼動しています。 リバースプロキシ + アプリケーションサーバ ユーザが携帯からブログを閲覧した際にページを生成してレスポンスを返すサーバ群になります。現状はApache(リバースプロキシ)とApache + mod_perl(アプリケーション)を1台のサーバに同居させた形で稼動しており、台数は全部で

  • DeNA テクノロジーセミナーへ行ってきた

    昨日、開催された DeNA テクノロジーセミナーへ行ってきました。当初の予想を大きく上まわる応募があったようで、 会場にはたくさんの人たちがきていました。 DeNA へ行く途中ですこし迷ってしまって、15 分ほど遅れてしまい、一番興味のあった MySQL の話をあまり聞くことができませんでした。今回の資料が公開されるといいのですが・・・。 以下、メモとして書いておきます。まずは、MySQL まわりの話から。 MySQL は、バージョン 5.0.45 を使った master-slave 構成(5 系には最近移行したらしい、あわせて OS も 32bit から 64 bit に変更した) OS は、CentOS4(CentOS 5 にしたいと言っていた) master が落ちたときの予備のサーバとして、別途バックアップするサーバがある Slave には、読み込み専用のユーザしか設定しない(なの

  • IPnuts 4 LVS User's Guide

  • IPnuts 4.0r3

    IPnutsをPPPoEブロードバンドルーター兼Firewallとし、図のようなネットワーク環境を構築し、 内部サーバーを外部への公開サーバーとする。 IPnutsは普通のPCにNICを複数挿入し、ルーターやFirewallとして使用することに特化したLinux をベースに作られたOSで、市販のルーターにはない多機能性を持ちながら、導入コストを格段に 下げることができる優れた製品である。(5万円以下のルーターにSNMP機能はなかなかない。) Linuxでありながら最も障害の多いHDDを使用しなくて済むのは非常にありがたい。 (詳細は http://www.ipnuts.net/ を参照のこと) FD版は無料で使用することが出来るが、安価なので是非CD-ROM版を使用することを奨めたい。 (CD-ROMの方が格段に使い勝手がいいし、感謝の気持ちと存続を望むので、少しでも売り上げ に貢献するべ

    dann
    dann 2008/02/14
  • ロードバランサの冗長化 - KLablabWiki

    ロードバランサを冗長化する keepalivedにはVRRPという機能があります。ロードバランサを2台用意してこの機能を使うと、なんらかのトラブルで1台がダウンしても、もう1台のロードバランサが自動的に役割を引き継いでくれるようになります(この動作を「フェイルオーバ」といいます)。 この章ではkeepalivedのVRRP機能を使い、前章の構成で単一故障点だったロードバランサを冗長化する方法を紹介します。 VRRPとは 実際に使ってみる前に、VRRPとはどのようなものかを簡単に説明します。 VRRPはVirtual Router Redundancy Protocolの略で、RFC3768で定義されています。VRRPでは物理ルータ固有のIPアドレスとは別に「仮想ルータアドレス」[1]というIPアドレスを設定します。仮想ルータアドレスは、複数の物理ルータのどれか1台に割り当てられます。仮

  • LVSで実現するロードバランサ - KLablabWiki

    環境構築 それでは実際に、Linuxベースのロードバランサを構築していきます。最近では標準でIPVSをサポートしているディストリビューションが多いので、必要なパッケージをインストールして少し設定するだけで動作させることができる便利な世の中になってきています。 今回使用するソフトウエアについて Debian GNU/Linux3.1(sarge) ディストリビューションはDebianを使用します。 IPVS対応カーネル ロードバランサの基機能であるIPVSはカーネルの内部に実装されています。そのためIPVSに対応したカーネルが必要になります。Debian付属のカーネルイメージ(2.6.8-3)でも利用できますし、自前で再構築してもかまいません。カーネルを再構築する際の注意点については後述します。 ipvsadm IPVSを制御するためのツールです。仮想サーバグループの追加やリアル

    dann
    dann 2008/02/14
  • サーバ負荷分散概論

    特集のはじめに 特集のメインテーマは『サーバ負荷分散』です。 負荷分散というと むずかしそう 機器が高価 大規模向け というイメージが先行して、敬遠している人は多いのではないかと思います。 実は、今回の特集はそんなあなたのために書きました。 特集を読み終えたあと、きっとその印象は おもしろそう 安い 手軽に使える に変わっているでしょう。 ではではさっそく題に入りましょう。まず章では「サーバ負荷分散」一般についてざっと説明し、次章以降でより具体的な実現方法を解説していきたいと思います。 なぜサーバ負荷分散をするのか? 『サーバ負荷分散』[1]をひとことでいうと、「1つのサービスを複数のサーバで行うこと」です。では、どうして複数のサーバでサービスしたいのでしょうか? どんな利点があるのでしょうか? 大別するとそれは2つあります。[2] 性能 まず1つめの利点は性能向上です。 例

  • ActiveResourceで拡張子なしのURIを発行する方法

    Ruby on Rails 2.0から標準搭載されたActiveResource。これを使うと、RESTful APIをActiveRecordのように叩くことができるようになる。自分でURIを作ってopenすることもせず、レスポンスを自分でパースしてオブジェクトを作ることもせず、数行の記述でRESTfulなサービスを利用することが可能になる優れものだ。ActiveResourceの詳細は、 ここを見て欲しい。 さて、現状のActiveResourceは、僕にとって一つ気になる点がある。それは「URIが必ず拡張子付きで発行される」という仕様。例えば、 class Community < ActiveResource::Base self.site = ‘http://commusuke.eisbahn.jp/api/’ end として、「Community.find(1)」と実行すると、

    dann
    dann 2008/02/14
  • Ruby on RailsでDBが文字化けしてしまう→database.ymlに設定で解決 (CodeZine編集部ブログ)

    iioka@試行錯誤 です。 今までrailsをさわってて、特にDBをのぞかなかったので気づかなかったんですが、 テーブル内の値が思いっきり文字化けしてました。 最初、DBの文字コードをUTF-8にし忘れたかな?とも思ったんですが、そうでもない。 いろいろ調べてみたらdatabase.ymlに以下の値を設定すると良いようです。 encoding: utf8 前に書いた「rails内の文字コード指定」をしていると、 ブラウザにDBデータを表示させたときもちゃんと表示されてしまうので、 この設定に気づきませんでした(なので、設定しなくても動きます)。 とはいえ、ちゃんと設定した方がいいんだろうなぁ。 (今までの記事は「Ruby on Railsを始めよう」カテゴリにまとめました) ■続き書きました。 ・Ruby on Rails データベースmigration入門2

  • IE7とIE6を共存させる方法:まとめ

    IE 7の自動アップデートに伴ってだと思うのですが、当サイトで紹介した「IE7とIE6の共存」シリーズのアクセスが増えているので、既存のエントリーをまとめました。 リンク先や手順などは以前紹介した方法ではなく、最新のものになっています。 IE7をベースに、IE6をスタンドアローンで起動する方法:その1 IE7をベースに、IE6をスタンドアローンで起動する方法:その2 IE6をベースに、IE7をスタンドアローンで起動する方法 Virtual PCを使用して、IE6 or 7を起動する方法 追記: スタンドアローンは、Windows XPが対象になります。 Vistaの場合は、Virtual PCを使用します。 IE7をベースに、IE6をスタンドアローンで起動する方法:その1 IE7をダウンロードして、インストールします。 日語版「Internet Explorer 7」のダウンロード IE