2008年03月05日

【Windowsアプリケーション】俺たちと行こうぜ、スピードの向こう側へ - Polipo

あちこちで話題のPolipoです。 確かに体感できるくらい速いです。 解析・説明ページはもうすでにたくさんあるので、ここではあんまりPCに詳しくない俺が、あんまりPCに詳しくない人に向けてPolipoをご紹介します。 相変わらずいろんな紹介ブログからのかき集め情報による三次発信ですw あ、ちなみここではにWindows版限定で書きます^^;

1予備知識

プロキシ
プロキシとは、皆さんのPCとWEBサイトの間に位置し、一度見たページを保存しておいてくれるサーバです。 この保存されるデータのことを「キャッシュ」、保存することを「キャッシング」などと言います。 どんなメリットがあるかというと、同じページを2回目に見る場合、ブラウザはWEBサーバではなくプロキシサーバからキャッシュを取得することで、ページの表示を速くすることが出来ます。そればかりかWEBサーバやそこまでの経路の負担が軽くなり、インターネット全体がハッピーになるという仕組み。 みなさんがご加入のプロバイダでも用意している場合がありますので、契約時に貰った設定書などもう一度ご確認してみてください。

DNS
DNS=ドメインネームサービスとは、ホスト名とIPアドレスを相互変換するサービス。 皆さんお使いのPCには世界で唯一のIPアドレスという番号が振られています(厳密には唯一じゃない場合もあり)。
ただ、数字の羅列であるIPアドレスは人間様が見ても直感的でないため、ホスト名という英数字で表されることが一般的です(www.yahoo.co.jpとか)。 ところが、ホスト名だと今度はPCが理解できず、Yahooのサーバと通信できません。 そこでDNSサーバに問い合わせてホスト名をIPアドレスに変換して通信相手を特定するという手順が必要になります。 


2で、Polipoとは何か

「プライベートプロキシ」・・・だ、そうです。 
プロキシをプライベート、つまり皆さんのPC上に構築してしまおうというのがプライベートプロキシです。 これはキャッシュも皆さんのPCに保存するということですから、ハードディスクの一部を割り当てる必要があります。 二度と行かないページのキャッシュも保存されますので(一定の条件により削除されますが)、ハードディスクに少しでも無駄なデータを保存するのがお嫌いだという神経質な方にはお薦めしません。
こうしたプライベートプロキシを構築するアプリケーションは過去にもたくさん出回っているのですが、Polipoがこれだけ話題になるのは、PCとWEBサーバとの通信をより優れた方式に自動で変換するからです。 俺も詳しいことは知りませんが、サーバとの接続を維持しつづける方式に変換するそうで、リセット→接続手続→リセット→接続手続という手間が掛からない分、高速なんだとか。(あってる?)


3Polipoの入手

本記事執筆時の最新版は以下から入手できます。 クリックするとダウンロードされます。
polipo-1.0.4.0-forbidden-1-win32.exe

あとついでに、以下もダウンロードしておくと便利です。 説明は後述します。
(A):tolipo.exe
(B):proxy.pac


4Polipoのインストール

polipo-1.0.4.0-forbidden-1-win32.exeをダブルクリックしてインストールしましょう。
注意点は2つ。
  • ショートカットをスタートアップに登録すると、普通の文字キーがホットキーに割り当てられてしまうという報告があります。 "Run at Startup"にはチェックを入れないほうが良さそうです。

  • 20080303-0002.jpg

  • インストール先はデフォルトでは"C:\Program Files\Polipo"ですが、パスに空白が含まれると上手く動かないという報告があります。 例えば"C:\Polipo"などに変更しましょう。

  • 20080303-0003.jpg


5Polipoの設定

インストール先フォルダにある"config"というファイルを右クリックして、編集を選びます。 要はテキスト編集したいので、メモ帳以外のテキストエディタでも結構です。 このファイルで、Polipoのいろんな挙動について設定します。 設定する項目の行頭の"#"は削除してください。 最低限、以下の項目を設定しましょう。 
  • diskCacheRoot:キャッシュ領域として使用するフォルダを指定
    [例]
    diskCacheRoot = "/Polipo/Cashe"
    上記の例で"C:\Polipo\Cache"がキャッシュ領域となります。
    なお、diskCacheRootで指定したフォルダは事前に作成しておく必要があります。
  • dnsUseGethostbyname:名前解決にシステムデフォルトの設定を使う
    [例]
    dnsUseGethostbyname = yes
  • dnsNameServer:DNSサーバを指定
    [例]
    dnsNameServer = "111.222.333.444"
    上述のdnsUseGethostbynameか、こちらdnsNameServerのいずれかを設定しておきましょう。dnsNameServerを使用したほうが若干速いとのこと。 なお、"config"ファイルにはdnsNameServerという項目が記載されていないので、ご自分で書き加える必要があります。 DNSサーバが不明な場合はdnsUseGethostbynameの使用で良いと思います。
  • maxDiskCacheEntrySize:キャッシュ1ファイルの上限サイズ
    [例]
    maxDiskCacheEntrySize = 1000000
    この例ですと最大約10MBに設定されます。
    動画サイトなど大きなデータを取得する必要のあるサイトを頻繁に利用される方は、上限値を調整することでキャッシュフォルダのサイズ増大をある程度抑えることができます。


6設定項目に関して - 2008/03/05

Polipoの各設定項目について、有志の方々が日々解析してくださってますが、少なくとも現在俺の持ち得る情報の範囲では、Polipoは1つ1つのキャッシュファイルの上限は設定できるものの、キャッシュフォルダ全体の上限サイズを設定する方法がわかっていません。 したがって、上述したmaxDiskCacheEntrySizeは設定しておいたほうが良いでしょう。 未設定の場合は制限無しとなります。
また、Polipoでは、
polipo.exe -c configファイル名 -x
と実行すると、指定した"config"ファイルの設定に従いキャッシュフォルダを最適化する機能があります。 -xオプションの挙動を制御する設定項目は、
  • diskCacheTruncateSize
  • diskCacheTruncateTime
  • diskCacheUnlinkTime
  • diskCacheWriteoutOnClose
  • maxDiskCacheEntrySize
  • maxDiskEntries
あたりらしいのですが、今のところこの各項目の明確な説明は無いようです。 


7便利ツールの設定

項目3でついでにダウンロードしたツールをセットアップします。 なお、これらはPolipoの動作に必須ではありません。

(A):Polipoを起動すると、コマンドプロンプトが開き、最小化してもタスクバーに納められいささか邪魔です。 Tolipoを使うと、システムトレイにアイコンが表示されるようになり、タスクバーを邪魔しません。 
Tolipo.exeをPolipoのインストール先フォルダに配置します。 なお、Tolipoは固定で"polipo.conf"というファイルを読み込んでPolipoを起動しますので、"config"ファイルを"polipo.conf"という名前に変更しておきます。
Windows起動時にPolipoを常駐起動させたい場合は、Tolipo.exeのショートカットを「スタートアップ」に登録すると、意識することなく常に快速ネットサーフが出来ちゃいます。
20080305-0001.jpg

(B):Polipoも万能ではなく、WEBサイトによっては挙動がおかしくなる場合があります。 そうしたサイトを例外サイトとして登録しておくファイルです。 正確に言うと、例外サイトおよびローカルホストではPolipoを使用しないという指示を設定するファイルです。 記載例を参考に例外サイトを登録してください。

サーチ(調べる)2008/03/25
上記(A)のTolipoと同様にタスクトレイに収まり、Polipoを間接制御できるSolipoというツールもあるようです。
しかも、6で取り上げたキャッシュフォルダの最適化も解消しているスグレ物。
そもそもWin版Polipoは -x オプションが無効になってるんだってさ。
で、作者さんが私製ビルドとしてSolipoを作ったんだそうです。
基本的なconfig設定も盛り込み済みだし、導入後すぐに使えます。
http://serennz.sakura.ne.jp/sb/log/eid116.html

2chの関連スレに作者さんご本人によるコメントがあります。ご参考にどうぞ。
http://pc11.2ch.net/test/read.cgi/software/1204285574/126

8ブラウザの設定

(IE)「インターネットオプション」→「接続」タブ、(Firefox)「オブション」→「詳細」タブなど、各ブラウザのプロキシを設定する画面を開きます。
それぞれ「自動構成スクリプト〜」とか「自動プロキシ設定スクリプト〜」という設定項目があると思いますので、そこに(B)のファイルを指定します。
[例]
IEでの設定例           Firefoxでの設定例
20080305-0004.jpg 20080305-0003.jpg

(B)のファイルを使用しない(=あらゆるサイトでPolipoを経由する)場合には、それぞれHTTPのプロキシ設定として以下のように設定します。
[例]
IEでの設定例           Firefoxでの設定例
20080305-0006.jpg 20080305-0005.jpg
ローカルホストは対象外とすることをお忘れなく。


9もっといろいろ設定してみる

上記の手順でPolipoによる快速ブラウジングが可能になりますが、"config"ファイルには他にも様々な設定項目があります。
たとえば、キャッシュしないサイトを登録したファイルを指定するuncachebleFile、キャッシュしないどころか完全にブロックするサイト(広告や有害サイトなど)を登録したファイルを指定するforbiddenFileなどがあります。
Polipoが起動している状態で、http://127.0.0.1:8123/polipo/config? を参照するとその一覧と概要(ただし英語)を確認できます。


■おまけ■
DNSサーバの調べ方
コマンドプロンプトを開き、"nslookup"と入力します。 何やら数字が出てきたら、それがDNSサーバのIPアドレスです。
posted by Huwy at 23:42 | Comment(0) | TrackBack(1) | Windowsアプリケーション | このブログの読者になる | 更新情報をチェックする

2008年02月12日

【Windowsアプリケーション】頭の中のごちゃごちゃから概念やアイデアを結実させる - Frieve Editor

Frieve Editor
20080207-Infor01.JPG
(こういった概念図が簡単に作れる)

頭の中に雑然とある細々とした事柄を、一つのアイデアとして結実させることを支援するツールをアイデアプロセッサという。先日「非Googleなオンラインスケジュール・タスク管理」のエントリで挙げたMindomo のようなマインドマッピングツールに非常に近く、両者はしばしば混同される。
アウトラインプロセッサは「アイデアプロセッサ」ともいわれるが、より狭義のアイデアプロセッサは、思いついた事柄をメモ書きしていきそれをグラフィカルに構造化していくためのソフトウェアで、アウトラインのツリー表示だけでなくチャート図作成機能なども備える。アウトラインプロセッサが「アウトライン構造を備えた文章を記述するためソフトウェア」とすればアイデアプロセッサは「文章を記述する前に、発想をまとめておくためのソフトウェア」といえる。実際には「アイデアプロセッサ」を名乗りながらもアウトラインプロセッサであったり、両方の要素を備えたソフトウェアも存在する。
c.f. アウトラインプロセッサ - Wikipedia
表現したい概念の中心となるキーワードやイメージを図の中央に置き、そこから放射状にキーワードやイメージを繋げていくことで、発想を延ばしていく図解表現技法。この方法によって複雑な概念もコンパクトに表現でき、非常に早く理解できるとされ、注目され始めている。 人間の脳の意味ネットワークと呼ばれる意味記憶の構造によく適合しているので、理解や記憶がしやすい。
c.f. マインドマッピング - Wikipedia
Frieve Editorもアウトラインプロセッサ、アイデアプロセッサ、マインドマッピングと設定次第で様々な応用が利くアプリケーションだ(そもそもこのテのツールはそういう性格をしているものなのかも知れない)。
同種のアプリケーションは数多く出回っているが、Frieve Editorを他者と差別化している特徴は何といってもインターフェイスの斬新さではないだろうか。
グラフィカルであることは、このカテゴリのアプリケーションでは一般的な要素だが、Frieve Editorはグリグリ動くアニメーションが流動性に富み、固定概念からの脱却を強力にサポートする。フワフワと動く各ノードを見ているだけでも楽しい。
背景もゆったりとアニメーションさせることができたり、とにかく「リラックスした気分で新しいアイデアを導き出す」ことをとても強く意識しているようだ。残念ながらFlashや動画を作成するスキルがないので、このアプリの命である動的なインターフェイスをお見せできないのだが、是非インストールして体感してほしい。フリーウェアなので導入も気楽だ。

手放しで褒めちぎっているが、まだ改善の余地は多々あるようでサポートBBSにはユーザから多数の要望が寄せられている。
このカテゴリのアプリの性質上、発想の妨げになるような複雑なオペレーションは忌避される。しかし裏腹に、十人十色の様々なユーザ要求に応えなければならず、設定オプションが非常に細かい。実際に発想を投影していく作業をスムーズに進めるためには、多くの設定が必要である。このジレンマについては作者も十二分に認識しているようで、各ユーザに誠実に回答している。
最初は何をしていいのか分からないかも知れない。まずはデフォルト設定のままいくつか実際に作図してみるといい。ここをこうしたいという要求から機能や設定を見つけていくうちに、このアプリを使う場合、自分にはどのようなテンプレートが必要か見えてくるので、マスターファイルを作成してコピーして使い回すと設定の手間が軽減するだろう。
ヘルプファイルもこのアプリケーション自身で作成されていて、作成イメージの良いサンプルとなっている。

サポートBBSでの態度を見る限り、非常に誠実で聡明な作者なので、様々な要望に今後どのように応えていくのか大いに期待したい。
posted by Huwy at 02:28 | Comment(0) | TrackBack(0) | Windowsアプリケーション | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。