クライアント - みる会図書館


検索対象: UNIX MAGAZINE 2001年3月号
32件見つかりました。

1. UNIX MAGAZINE 2001年3月号

USENIX 2000 AnnuaI TechnicaI Conference 過生をサポートする。グラフィックスの輪郭はぎざぎざが なく、なめらかに仕 - ヒがる。 GNOME 環境の一部として配布されているいくつかの アフリケーションが、グラフィックスやほかのタイプの データのレンダリングに GNOME キャンバスを利用し ている。たとえば Gnumeric (GNOME スプレッドシー ト ) 、 GNOME-PIM ( 個人情報管理ツール ) 、 Evolution (GNOME 用の次代メール / グループウェア・プログラ ム ) である。 GNOME プロジェクトと GNOME キャンノヾスにつ いての詳細は http://developer.gnome.org/を参照し てほしい。 X クライアントの効率的なスケジューリング Keith Packard (SuSE) Packard は、 X11 のための新しいスケジューリング・ アルゴリズムを紹介した。 X11 のオリジナルのスケジュー リング・アルゴリズムは単純で、グラフィックスの負荷が 大きいプログラムの実行中に対話型アプリケーションの資 源カ材曷するおそれがあった。これが、このフロジェクト を始める技勺な重丿になった。これは plaid のようなプ ログラムを実行するとはっきりする。 plaid は多くの描画 要求を生成するが、そのために長時間にわたってシステム を拘束するので、 xterm のような簡単なフログラムでさえ 利用できなくなるおそれがある。 ーヨ殳に X サーバーは、クライアントとの接続に well- known ポートを使うシングルスレッドのネットワーク・ サーバーである。ポートでクライアントからの接続を受け 付け、ポートを経由して送られるリクエストを処理する。 クライアントからのリクエストを検出するには、 select(2) システムコールか利用される。リクエストを出しているク ライアントがあると、 X サーバーは最小のファイル言当主子 からリクエストの処理を始める。各クライアントからのリ クエストを一尉寺するため : ンヾッフアが使われる。このバッ フアの大きさは変更できるが、通常は 4KB である。リク 工ストは、バッフアが一杯になるか 10 リクエストになる と実行される。その後サーバーはリクエストを出してい るクライアントがあるかどうか調べる。あれば、サーバー は select(2) コールをストップし、これらのリクエストの 処理に戻る。すべてのクライアントからの入力が処理され UNIX MAGAZINE 2001.3 たら、 X サーバーはふたたび select(2) を呼び出してデー タかやってくるのを待つ。このアルゴリズムの間題は、よ りアクテイプなクライアントカ憂先される点にある。クラ イアントが複雑なリクエストを生成すると、そのリクエス トを処理するために多くの時間を消費し、サーバーを独占 してしまうことになるだろう。つまり、わすかなリクエス トしか生成しないクライアントの場合は、よりアクテイプ なクライアントが存在すると X サーバーという資源か粘 渇することになる。また、順番か回ってきたときに完全な リクエストを生成していないクライアントは無視される。 よい面を見ると、クライアント負荷か高けれは、サー はその時間のほとんどをリクエストの処理に費やし、シス テムコールて時間を浪費することはほとんどない。 解決法の設計目標は、ユーサーからの入力を処理する アプリケーションに高い優先順位を与え、上交的粒度の 細かい時憫べースのスケジューリングを提供することであ る。各クライアントは、接系に初期優先順位が与えられ る。リクエストは優先順位の高いクライアントから実行さ れる。クライアントの優先順位は、さまざまなイベントに よって変更されることもある。このシステムは、過度に負 荷が高いクライアントにペナルティを課し、あまり重川し ていないクライアントの優先順位を上げる傾向がある。 性能の測定結果では、変更による違いはあったか : 2 つ のスケジューラの相違はわすか 2 % である。つまり、ス ケジューラの変更は性育ま則定に使ったツールにほとんど影 響をケえなかった。使用したツールはひろく利用されてい る X11 perf である。このツールは他のクライアントと の競合がきわめて低い状態で実行されるので、新しいスケ ジューラの利点ははとんど気づかない程度だった。 X サーバーの動きを観察し、それにもとづいてスケジ ューラを変更することにより、性能に悪景彡響をおよほ、さす にオリジナルのスケジューラの欠点を改善できる。詳細 や XFree86 グループによる X ウインドウ・システム 4.0 リリースへの統合作業についての 1 辭には http://www .xfree86.org/を参照してはしい。 AT&T の AST オープンソース・ソフトウェア GIenn S. FoIwer 、 David G. Korn 、 Stephen S. North 、 Kiem-Phong Vo (AT&T Labs-Research) Korn は、 AT & T がオーフンソース・コミュニティに 公開しているツールを紹介した。なかには茁妾、間接的に 161

2. UNIX MAGAZINE 2001年3月号

Daemons & Dragons SC 翡 好評発売中 ! Java プログラミング・ノート 国際化と 日本語処理 ava 図 1 DSR CAFE BABE クライアント SLB サーバー は、それを自社製品の ServerIron に統合した。 DSR では、 SLB がサーバー群と同し Ethernet セグ メントに置かれ、提供するサービス用として DNS に通 知したアドレスをもつ。各ホストまたは個々のサーバー は、そのアドレスをルーフ。バック・インターフェイスに 設定する。これで、マルチサーバー構成の web サイト のアドレスは 1 つに統一される。このアドレスは VIP (Virtual (P) と呼はれる。プレディクタは、次に着信 ・風間一洋著 する HTTP リクエストの送信先を決定する。 SLB は ・ A5 判、 312 ページ 個々のサーバーの MAC アドレスに送られる Ethernet ・ ISBN 4- イ 561-3481-5 バケットを生成する。これには、宛先 IP アドレスとし SC ・本体 3 , 000 円十税 て VIP が、送信元 IP アドレスとして HTTP クライ Java による日本語処理、さらには国際化 アントが含まれる。 Ethernet?S ケットがホストに渡さ プログラミングに必須の知識を数多くの れると、 IP スタックはその宛先が VIP 、つまり web サンプル・プログラムを示しながら平易に サーバーだと解釈する。 Web サー ーはページの返送 解説する。真の意味での "write Once, 準備を整えると、バケットを送信元、すなわち HTTP Run Anywhere" を目指すプロクラマー クライアントの IP アドレスに送る。この接続では、以 に最適の 1 冊。 降はそのクライアントからのバケットだけが負荷分散装 置で処理される ( 図 1 ) 。そのホストの応答はクライアン 目次から 1 章 Java はどんな言語か トに直接返送されるからである。 2 章 国際化と地域イヒ Foundry の ServerIron は、これらの接続を管理す 3 章 Unicode 4 章 ロケー丿レ るため、データの送信先となる MAC アドレスととも 5 章 工ンコーティング に、クライアントの IP アドレスとポートの組合せを保 6 章 タイムゾーン 7 章 リソース / ヾンドル 持している。マシンのメモリが 32MB あれば、サーバー 8 章 フォーマット出力と解析 は 100 万件の接続を管理できる。 DSR の登場により、 9 章 文字列の比較 10 章 テキストの境界解析 ServerIron 経由で戻ってくる接続について心配する必 1 1 章 インブットメソッド 要はなくなり、クライアントからサーバーへのリクエス 12 章 文字の表示 付録 Unicode プロック / ロケール一覧 / トだけを管理すればよくなった。 工ンコーティング名一覧 / タイムゾーン D 一覧 / ユーロ通貨記号への対応 Serverlron の言殳疋 株式会社アスキー プログラミング・ノート ( A 第を第ーー 国際化と日本語処理 風問一洋 ・フ 1 つ以上のサービスを分散させるための基本的な設定 は、 ServerIron ではいたって簡単である。サービスを 提供する物理的なホストごとに server real ディレク 〒 1 51 ー 8024 東京都渋谷区代々木 4 ー 33 ー 1 0 出版営業部 電話 ( 08 ) 5351 ー 8194 UNIX MAGAZINE 2001.3 97

3. UNIX MAGAZINE 2001年3月号

連載 JavaServer Pages— 図 6 Servlet でタイナミックなページを生成するプロセス 要求の処理 ① Web ページ要求 ④実行結果を返す ③実行結果を返す ⑤結果を表示 Web ブラウザ クライアント ( の servlet 用のスレッドを 生成し、情報を渡す 図 7 JSP でダイナミックなページを生成するプロセス ③書換え後の HTML を ① web ページ要求 Servlet スレッド Web サーバー HTML コード く % Java コード % > <%= Java コード % > HTML ファイル HTML コード XXX Web サーバー く html> く head> ( ② Java コードを実行し、 HTML ファイルに埋め込む Web ブラウザ クライアント クラスライプラリ ) で実装します。 言語は基本的には利用できません。 主役の登場 - ー - JSP 返す はかのプログラ ミング ダイナミックなページを作る技術のおおまかな流れを時 代川貞に紹介してきました。 Sun カ鯛発した JSP は、これ らのイ督はみやさまざまな技術をベースにして作られたシス テムです。全体のイ督はみは ASP に似ていますが、実装方 法は Java の技術と Servlet をベースにしています。 図 7 は、 JSP がダイナミックな Web ページを生成 する処理の過程を示しています。 JSP では、 Web プラウ サか要求したページが JSP に対応したファイルなら、そ のファイルの HTML に埋め込まれたスクリプトを Web サーバーが解釈して実行します。その後 Web サーバー は実行結果を埋め込んだ HTML コードを Web プラウザ べ区します。 以下は、スクリプトを含む JSP ファイルの例です。 84 く tit1e>JSP の例く /title> く /head> く body> He110 , く % out . println(request . getParameter ( "yourname " ) く /body> く /html> 、、 < % " と、、 % > " に囲まれたところが JSP のスクリプト です。この部分は Java 言語で書きます。 request . getParameter("yourname") 十 " ー " は、 Web プラウサから渡されたパラメータ文字列 (your- name) の末尾に、、 ! " を加えます。そして、 out. println() で文字列本をその部分に書き出します。 UNIX MAGAZINE 2001.3

4. UNIX MAGAZINE 2001年3月号

図 3 図 4 連載 JavaServer Pages— アプレットでダイナミックなページを生成するプロセス ページを返す ② ) 指定された Web ① web ページ要求 JavaScript でダイナミックなページを生成するプロセス ( ④クラスファイルを返す ファイルを要求 ( アプレットのクラス ② HTML を返す ① web ページ要求 クライアント Web ブラウザ 実行結果を表示 ( ① HTML とスクリプトの クライアント Web ブラウザ のようなプログラムを HTML に当します。 Web プラ ウサは HTML に埋め込まれた JavaScript プログラムを 解釈し、プラウサ上で実行します ( 図 4 ) 。 JavaScript もアプレットと同様に Web プラウサ側で ローカルに実行されるので、 Web サーバーヘアクセスす る必喫がなく反応が速いという利点があります。 JavaScript にはアプレットにない利点もあります。ア プレットは、 Web プラウサ上でアプレットの外側に表示 されているものを制御できませんが、 JavaScript はプラ ウザ上のさまざまなものを制御できます。たとえば、 Web プラウサ上てマウスがクリックされたとき、アプレットは 自分の領域内ならそれを本剱日し、クリックした位置に応し て表示を変更できます。しかし、領域の殞則をクリックさ れてもそれを検知できません。つまり、同しページにフォ ームのボタンか表示されていても、アプレットにはボタン か胛されたことを知る手段がありません。これに対して、 JavaScript はページ本を制御できるので、フォームの 82 HTML コード く applet … > </applet> HTML ファイル アプレットの コード クラスファイル Web サーバー サー / ヾー HTML コード <script ... > スクリプトコード </script> HTML ファイル Web サーバー ボタンカ甘甲されたり、表示されているイメージ上をマウス か移動したイベントを捉えて処理できます。 JavaScript は、 ・ HTML との親和性のよさ ・ユーサーの操作に対する反応速度 ・小さなプログラムの作りやすさ サーバー UNIX MAGAZINE 2001.3 うになりました。なお、 機能か拡張された結果、 Web サーバー側でも動かせるよ しか動きませんでしたが、のちにイ士様や web サーバーの JavaScript フログラムは、当初は Web プラウサ上で で正しく動かないケースがあります。 だし、 JavaScript もアプレットと同様に、互換生が原因 するべージの大半は、 JavaScript で作られています。た ています。インターネット上で目にするアクテイプに反芯 など、 Web 上での GUI の作成に適した多くの利点をもっ

5. UNIX MAGAZINE 2001年3月号

平文てパスワードをやりとり 図 3 図 4 を入力 unmaga バスワード クライアント を入力 unmaga / ヾスワード クライアント パスワードを暗号化してやりとり セキュリティ疋 ネットワーク 平文 unmaga 暗号 ネットワーク H("unimaga") ハッシュ化済みパスワード ファイル共有と印刷 サーバー ハッシュ関数 H("unimaga") の 結果と登録パスワード ( ハッシ ュ化済みで登録 ) を比較 受信したパスワード H("unimaga") とサーバー内部の平文パスワード をハッシュ化したものを比較 認証に関する設定と、アクセスできるホストの制限をお こないます。今回は、 VMware 上の NetBSD のユーザー 名とパスワードを利用して認証する設定にします。 = user yes : SMB の認証が暙号化パスワードでおこなわれる。 ハッシュ化されたパスワードカまれても安全 ( 図 3 ) 。 ドをハッシュ化したものを保存するため、サーバーで が分かってしまう。しかし、サーバー側ではパスワー なわち、ネットワークをモニターされるとパスワード no : SMB の認証が平文パスワードでおこなわれる。す smbpasswd によって設疋する必要があります。 ります。、、 yes" とした場合は、 Samba 用のパスワードを 場合は、、 encrypt passwords" を、、 n 。 " とする必要があ ューサー名とパスワードを NetBSD 上と一致させたい モードと暗号化しておこなうモードの 2 不鶤頁があります。 SMB では、この認証を平文のパスワードでおこなう め、サーバーでパスワードか盜まれれば終り ( 図 4 ) 。 バーでは平文のパスワードを保存しなければならないた されているのでパスワードの解読は困しかし、サー ネットワークをモニターしても、パスワードか、暙号化 UNIX MAGAZINE 2001.3 Samba は暗号化 (yes) を推奨しており、 Windows 側 においても、 Windows NT SP3 や 2000 以降では暗号 化されたパスワードの利用がデフォルトになっています。 私は、、 yes" としています。 encrypt passwords = yes 次に、 Samba サーバーにアクセスできるホストを限定 する設定をおこないます。今回の例の韆竟には 2 つのネッ トワーク・インターフェイスがありますから、ホストべー スの、、ローカルエリア接続 " 側のネットワーク (lel: 192. 168.0.3 / 24 ) に対してのみ Samba サービスを提供する設 定にします。そして、ホスト OS である Windows ( 192. 168.0.1 / 24 ) のみがアクセスできるようにします。 hosts a110W = 192. 168.0. 1 192.168.0.3 / 24 interfaces 最後に、共有するディレクトリです。デフォルトでは、 UNIX 上のホーム・ディレクトリとプリンタが共有され writable = yes browseable = Ⅱ 0 comment = Home Directories [homeB] るようになっています。 47

6. UNIX MAGAZINE 2001年3月号

信第生信信第槲第信信信第信等第第信第信第信第 : 第第信 W : に信第信第信勢 : 信信信信 ? 第信等、 ログカ鯤在していること自体が不便だという意味ではな んでした。 FTP でファイルを傷つけすに中幻逶する去は いか、これを鮹夬するには、 grep を使ってホスト名ごと ないでしようか、という質問記事です。 に行を取り出すスクリプトを cron で定期的に実行する方 これに対して、、、 Binary モード " について調べてみる 法、 syslog を利用するデーモン・プログラムを匿するな とよい、 ASCII モードでは文字列の終端を変更する、文 どしてファシリティを変更し、 syslog サーバー側でその 字列ではなく行の終端すなわち改行記号を変換するので ファシリティごとにファイル名を変えるガ去、 syslog サ ある、 UNIX 間の転送ではこの変換はおこなわれない、 ーバーではなく口一カルの syslog でログを保存し、 NFS 正確には同しプラットホーム間でも変換されており、い で対象マシンのログディレクトリをマウントする方法が ったん FTP で定める改行記号に変換してからもとに戻 考えられる、ほかに syslog-ng を使うというガ去もある、 している、 UNIX 間では相手のサーバーが UNIX だと といったフォローがきました。 分かった時点で B ⅲ ary モードになるクライアントが多 いが、そのようなクライアントだと改行コードは変換しな Newsgroups: fJ.comp. misc い、 FTP では ASCII だけでなく EBCDIC も使えるが Subject: ドメイン名取得は早い者勝ち ? それを実装しているクライアントは少ないと思う、といっ 先日から日本語のドメインか取得できるようになった たフォローがきました。 ようですが、企業名を第三者カ陬得して高値でオークショ Newsgroups: 斤0S. bsd. freebsd ンにかける行為カ墹題になっているそうです。ドメイン Subject: 頑丈な http サーパを構築したい 名は商標登録などとは関係なく早い者勝ちで取得できて 、アタックに強い HTTP サーバー " を構築しようとして しまうものなのでしようか、という疑間記事です。 います。 Web コンテンツだけでなく OS も CD-R に焼 これに対して、ドメイン名は一般に商標と同一視さ き、そこからプートするようにすれば書換えは不可能にな れていないというのが早い者勝ちで取得した人たちの ると考えていますが、このようなサーバーはどうやって作 言い分のようだ、日本語には異体字がある ( 同じ意味 ればよいのでしようか、という質間記事です。 の漢字に複数の字体がある ) ため、名前に異体字が多 それに対して、 chobitBSD を利用するのはどうか、こ い糸目織は複数のドメインを登録しないといたすらや迷 れはフロッピーを使うのが基本だが CD-R でも利用で 惑サイトに使われてしまうなど、日本語ドメインには きるようである、ファイルシステムが変更されないこと いろいろと間題がある、日本語ドメインだと日本語が と安定性は別である、 CD-R の劣化やドライプのトラブ 入力できるマシンからしかアクセスできないのか、検 ルといったハードウェア的な問題が生しる可能性がある、 索エンジンやポータルサイトを使えはよい、日本語 CD-R は読出しが遅いのでそれに起因する問題が発生し を RACE 変換したあとの bq ーで始まるドメイン名 そうである、ファイルシステムをリードオンリーにすれ を憶えて使うという方法もある、日本語ドメインの受 ばコンテンツの書換えには強いが、 root 権限の乗っ取り 付け開始前に変換後の名前を予測して先行取得したと 防止にはそれほど有効ではない、 telnetd や rlogind が 動かな 0 、よう 0 = して 0 、ても , 。。、権限は乗取られる可龕 ころがあったようだ、 RACE 変換については、 http: www.onamae.com/multi/や http://www.ietf.org 性がある、 DoS アタックなどのサービスの継続性に対す /internet-drafts/draft-ietf-idn-race-03. txt を見ると る攻撃にははとんど効果がない、セキュリティ面での問 よい、また多言語ドメインの運用については http: 〃 題が少ないソフトウェアをきちんと運用するのが基本で www.nic.ad ・ jp/jp/research/idn/index. html が参考 はないか、ますは『 UNIX & インターネットセキュリ になる、といったフォローがきました。 テイ』 ( オライリー・ジャパン ) などでしつかりした基 礎矢日識を身につける必要がある、といったフォローがき Newsgroups: . comp 」 ang. 」 ava fJ.questions. unix, 他 ました。 Subject: FTP がうまくいきません。 あるプログラム・ファイルを FTP て転送したら、転 Newsgroups: fj.sys. sun 月 unix 送の前後でファイルサイズが変わり、うまく起動しませ Subject: ircll 日吾パッチの役目は ? ? 141 UNIX MAGAZINE 2001.3

7. UNIX MAGAZINE 2001年3月号

DAEM 〇 NS & DRAG NS 負荷にも負けす Chris Terry, WiIIiam LeFebvre ■ from Performance Computing 自分が管理するマルチサーバー構成の Web サイトに なホストで動作する専用ソフトウェアである。サービス アクセスするときに、不安になったことはないだろう の停止が許されない企業の大半は、単体のハードウェア か。負荷が重すぎて応答が遅かったり、まったく利用 製品のほうを選ぶだろう。環境がオーバーヘッドから解 できないとしたらどうだろう。 Web サイトでもっとも 放されるし、 OS によけいな機能を追加しないので面倒 重要なのは可用性と性能である。不安を感し始めたら、 も少ないからだ。 サーバーの負荷の分散による Web サイトの安定運用を これにより、企業は単一のサービスにみえるサーノヾー 検討すべきだ。 群を構築できるようになる。 SLB は当該サービス用の パプリック IP アドレスを管理し、個々のクライアント からの接続をサーバー群のうちの 1 台のホストに送信す こで 1 つ大きな疑問が浮かぶ。どのサーバー る。 信されるのだろうか。 SLB には、そのマシンでサービ ニコ システム管理者がメインフレームを放り出し、 スか提供可能かどうかや ( 通常は、サーバー上でアプリ ンピュータをデータセンターの王座につけて以来、彼ら は厄介な問題を抱えている。提供するサービスがホスト ケーション・レベルの診断をおこなう ) 、サーノヾーが適 の能力を超えたら、どうすれはいいのだろう。 1 台のマ 切に処理できるトラフィック量 ( プレディクタ・アルゴ シンでアップグレードを繰り返しても、やがてハードウ リズムと呼ばれるもので判断する ) を調べる仕組みがか ならす用意されている。プレディクタの種類はさまざま ェアの限界や OS のバグに突き当たったり、ちょっと で、べンダーか提供する製品によって異なる。 した部品が原因でシステムがダウンしたりする。そこで サービスを何台かのホストに振り分けると、今度は思わ ラウンドロビン : 単純に、各サーノヾーに接続を 1 つずっ ぬ不備が次々とみつかる。頼りになるのはラウンドロビ 割り振る。同じハードウェアとソフトウェアを揃えた ン DNS だけだが ( 2 月号の「 DNS による負荷分散」 ホストでは簡単な手法だが、負荷分散の実力は引き出 を参照 ) 、可用性については考慮されていない。 DNS を せない。 利用したもっと高度な手法も考えられるが、それはそれ 接続数 : その時点で処理している接続数がもっとも少な で間題がある。クライアントにサービスを提供するホス いマシンに接続する。安全かっスケーラブルなプレデ トを別のホストに移して、負荷を振り向けたいという誘 イクタで、過剰なトラフィックや、ホストを溢れさせ 惑に駆られるかもしれない。しかし、きちんとパーティ るようなトラフィックを減らせる。 ション分けされていないハードディスクのデータ構造と 同様に、そのサーバーを喰いつぶしてしまうだろう。 重み付け : 重み付けにもとづいてホストにトラフィック AIteon Web Systems 、 F5 Networks などの数社は、 を振り分ける。サーバー A の重みが 10 で、サーバー SLB (Server Load Balancer) 製品を販売している。 B の重みが 5 の場合、サーバー A はトラフィックの 3 れらは単体のハードウェア・コンポーネントや、一般的 分の 2 を受け持つ。通常、このアルゴリズムは無条件 負荷の分散 95 UNIX MAGAZINE 2001.3

8. UNIX MAGAZINE 2001年3月号

連載 JavaServer Pages 図 5 ASP でダイナミックなページを生成するプロセス ① Web ページ要求 ③書換え後の HTML を 返す Webj ラウサ クライアント クライアント・サイド JavaScript (Web プラウサ側 で動くもの ) サーパーサイド JavaScript (Web サーバー側て動くも の ) と区別することもあります。 柔軟なスクリプト機能ーー ASP ASP は、 Microsoft か開発した、 Web サーバー側で ダイナミックなページを生成する機能です。 HTML に埋 め込まれたスクリプトを Web サーバーが解釈して実行し ます。 Web プラウサには、スクリプトの実行結果を埋め 込んだ HTML ファイルが送られます ( 図 5 ) 。 HTML に特別な言当を埋め込み、それを Web サー ーかま行するというイ督はみは SSI に似ていますが、 SSI の ように特定の言当をあらかしめ決められたルールで書き換 えるのではなく、スクリプトを実行して任意の web ペー ジの内容を生成できます。 ASP がサポートしているスクリプト言語は、 ・ JavaScript に似た言言吾 f ヒオ兼の JScript ・ Visual Basic に似た言語イ士様の VBScript の 2 不鶤頁です。以下は、 VBScript を含む HTML コー ドの例です。 く%@ LANGUAGE="VBSCRIPT" % > く html > く he ad> く tit1e>VBSCRIPT の例く /title> く /head> く body> く % UNIX MAGAZINE 2001.3 HTML コード く % スクリプトコード % > HTML ファイル HTML コード XXXX く /body> く /html > Web サーバー Response . Write("He110, Wor1d ! " ) ーが必要です。現状では、 Windows 上で動作する Mi- ASP を実行するには、 ASP に対応した Web サー HTML ファイルに埋め込む ② ) スクリプトコードを実行し、 く技術で、 ServIet プログラムは Java 言語 ( と Java の ともできます。これに対して、 Servlet は Java にもとづ 言語ですが、シェル (sh) や C 、 Java などで実装するこ グラムとして比較的ひろく利用されているプログラミング のプログラミンク言語で実装できます。 Perl は CGI プロ す。 CGI は情報を受け取って処理するプログラムを任意 Servlet と CGI には、もう 1 つ大きな違いがありま 速度生能や効率は CGI より向ー - ヒします。 大きいのですが、スレッドはオーバーヘッドが小さいので レッドを起動します。プロセスの起動はオ→ヾーヘッドが ロセスを起動しますが、 ServIet は Web サーバー内でス ています。ただ、 CGI は要求を受け取るたびに新しいフ Servlet の仕組みは、 ASP や SSI よりは CGI に似 として返します ( 図 6 ) 。 グラム (ServIet) が HTML コードを生成し、応答結果 なく、 Web プラウザからの要求を受け取った Java プロ や SSI のように HTML に特別な言当を埋め込むのでは イナミックなページを生成する機能です。ただし、 ASP Servlet は、 Sun が開発した、 Web サーバー側でダ 難しいけれど高機能ーー Servlet (PersonaI Web Server) のみが ASP に対応しています。 crosoft の IIS (lnternet lnformation Server) と PWS 83

9. UNIX MAGAZINE 2001年3月号

Daemons & Dragons— 図 2 仮想サーパーの設定例 server virtual wwwl 209. 157 .22.249 po rt HTTP c oncurrent port HTTP dsr bind HTTP Webhost1 HTTP Webhost2 HTTP Webhost3 HTTP ピスの一部を担わせるのは、アクテイプ / アクテイプ方 テイプを設定すればよい。 こでは、実際のサーバーの IP アドレス、そのサービス用の TCP ポート、診断に利 式の高可用性を実現するためだ。各種のサーピスを対象 に、複数のアクテイプな ServerIron が緊急時にサービ 用するアプリケーションごとの間合迂を定義する。 Web スを引き継ぐ態勢を整えることができる。 サーバーとして運用するホストの設定例を以下に示す。 これらの機能をみても、 DSR を採用している SLB server real Webhost1 10.0 . 0.5 は、過大なトラフィックに悩まされている Web サイト port HTTP port HTTP url "GET / " にとって適切な解決策である。 DSR が適しているサー 個々のサーバーをすべて追加したら、クライアントへ ピスとしては、このはかに FTP などを検討してほし のサーピスをエミュレートする仮想サーバーの設定をお い。ホストからのデータを運ぶ大きなバケットを SLB こなう。仮想サーバーには専用のパプリック IP アドレ で処理する必要がないため、 FTP セッションは高速化 スを設定し、専用の TCP ポートの定義、各サーバーの され、 ServerIron をはかの処理に回せる。結果として、 IP アドレスとポートの組を列挙する ( 図 2 ) 。 Ethernet スイッチがそのバケットのフレームを繰り返 図 2 の仮想サーバーの設定例には concurrent オプ し処理する手間が省ける。新しい宣伝を耳にしたり、新 ションカ甘旨定されている。これは、同じクライアントか 製品がリリースされたら、それはデータセンターのポト らの接続をすべて同一のサーバーに振り向けることを意 ルネックもしくは障害ポイントが 1 つ減るという嬉しい 味する。電子商取引やトランザクション・べースの Web ニュースになるだろう。 サイトにとって必須のオフションである。 dsr オプシ ョンは、 DSR を用いてこの仮想サーバーと実際のサー 18 歳のときからグラフィック・デサイン、システム管理のため ーを通信させる。 bind オプションは、仮想サーバー のプログラミン久 WAN の管理など、 IT 関連のあらゆる仕事 の HTTP ポートに、列挙されている実際のサーバーの に携わってきた。現在は、 CNN のインターネット技術グルー HTTP ポートを割り当てる。 プのシステム・エンジニアを務めている。 高可用性 SAGE が発行する「 Short Topics ⅲ System Administra- tion 」の編集者で、ジョージア州アルファレッタ市で Group Sys Consulting を経営している。 ・ Chris Terry ■ William LeFebvre ServerIron は、従来のアクテイプ / スタンバイ方式の フェイルオーバー機能をサポートしているが、 Foundry 「 Bearing The Load 」 Networks ではさらに優れた機能として、対称型負荷分 Performance Computing 2000 年 1 月号より 散 (Symmetric Load Balancing) を開発している。負 ◎ 2000 , Performance Computing (). S. A. ) 荷が高い場合は専用の Ethernet セグメント、低い場合 は通常のセグメントを使って、 ServerIron はサーバー の状態を監視し、現在管理しているサーピスのための通 信をおこなう。重み付け方式はサービスごとに適用でき るため、重みの低い ServerIron をただちに停止すれば、 サーピスの競合を未然に防げる。この方式では、数多く の問題を未然に回避できる。それなら、ホットスタンバ イが必要になるのはなぜだろう。増設したマシンにサー 98 UNIX MAGAZINE 2001.3

10. UNIX MAGAZINE 2001年3月号

特集・ VMware で UNIX 図 2 T20 上のネットワーク ローカルエリア接続 ローカ丿レ・ネットワーク 192.168.0.1 Windows 2000 インターフェイス 実ネットワーク・ 0e1 ) 192.168.0.3 VMware アドレス から割り当てられる実 0e0 ) DHCP サーバー リッジべース (Built-in-Ether) が、 Ethernet2 として ホストべース ( ローカルエリア接続 ) カ甘旨定してあり、そ れぞれ NetBSD 上では 1e0 と lel として扱われます。 Built-in-Ether と Ethernet1 (le0) は、 DHCP サー ー経由で IPv4 アドレスか割り当てられており、 Win- dows 2000 のローカルエリア接続には 192.168.0.1 / 24 カゞ、 NetBSD 上の Ethernet2 ( 1e1 ) には 192.168.0.3 / 24 がそれぞれ割り当ててあります ( 図 2 ) 。 この状態で Samba によりファイルを共有する場合は、 ローカルエリア接続内、つまり Windows 2000 の 192. 168.0.1 と NetBSD の 192.168.0.3 のあいだでおこな うようにするのがよいでしよう。このようにしておけば、 Windows 2000 が Built-in-Ether を介して外部の実ネ ットワークに接続していない状態でも、ファイル共有には 間題が発生しないからです。 smb. conf の設定の要点は、ワークグルーフの設定と NetBIOS 上での名前、アクセス許可、インターフェイ ス、共有するディレクトリです。パッケージ・コレクショ ンによってインストールした場合は、 /usr/pkg/share/ examples/samba 以下に疋のサンプルファイルがあり ます。これを芻制彡にして説明していきます。 芻既彡を /etc/samba へコピーします。 # cp /usr/pkg/share/examples/samba/smb. conf . def ault /etc/samba/smb . conf 芻旧杉には日本語で記述された smb. conf. default. ja が あるので、そちらも参考にするとよいでしよう。 ワークグループと NetBIOS 上の名前 最初に、 NetBIOS 上でのワークグループ ( またはドメ イン ) と NetBIOS 上での名前を設定します。それぞオ、 46 smb. conf の、 workgroup と netbios name' で設疋 します。 たとえば、ワークグループ名を VN'INET 、ホスト名 を ANAGOVM としたとき、 21 行目付近にある work- group 、 netbios name を次のようにします。 workgroup = VMNET netbios name = ANAGOVM ( セミコロン ) と、、 # " があ smb. conf では、行頭に ると、その行はコメントとして扱われます。 次に、クライアント ( ホスト OS である Windows 側 ) で用いる言語を、、 client code page" で指定します。日本 語の場合は、 932 となります。そして、クライアントから ファイルシステムへの書込みをおこなう際の、、ファイル名 の " 文字コードを、、 coding system" で指定します。これ は、 UNIX 側でファイル名を ls などで表示する際に景グ をなえます。 値としては EUC 、 SJIS 、 CAP 、 HEX があり、それ そ、れ次のような意味です。 EUC : ファイル名の文字コードを EUC で書き込む。つ まり、 Windows で使われている Shift-JIS のファイ ル名が EUC に変換されたものが UNIX 上のファイル 名となる ( W ⅲ d 。 ws 上のファイル名は「てすと」とし ます ) 。 % ls ? ? ? ? ? ? ← NetBSD では 2 バイトコードは表示されない SJIS : Windows 上の Shift-JIS のファイル名をそのま ま UNIX ファイル名とする。 % ls ? ? ? ? ? ? ← NetBSD では 2 バイトコードは表示されない HEX : Shift-JIS を ASCII コードに変換して保存。 % ls : 82 : c4 : 82 : b7 : 82 : c6 CAP : Macintosh 用の AppleTalk を利用するファイ ルサー ・ソフトウェアである CAP 互換に変換。 標準の NetBSD では日本語のファイル名の表示はでき ませんし、日本言韶 ) ファイル名を扱う必要性も感していな いので、私の環境では HEX としています。 coding system = HEX UNIX MAGAZINE 2001.3