トップ 最新 追記

のろのろのろ雑記


2006年06月09日 ねこ

_ 行きと帰り、駅出てすぐのスロープで

 それぞれ別の猫が。行きはモノクロがまったりと、帰りは茶と白が仰向けにごろんと。人が近づいても警戒感ゼロで、妙に和みました。


2006年06月04日 cacti

_ [Web]cactiを導入

 p2pquake.ddo.jpは、非常に小規模ではありますが、サーバです。サーバたるもの、稼動状況を監視することはサーバ管理者としてやっておきたいものです。そこで、MRTGを導入しました。

 …が、1つのグラフにつき2項目を指定する必要がある等、少々不便なことがあります。そこで、より多彩なグラフ描画機能を持つ「RRDtool」のフロントエンド「cacti」を導入することにしました。

 Apache 2へのPHP 4モジュールの組み込みがうまくいかず、php.exeを呼び出すCGI形式を取ったり、MySQLのパスワードハッシュアルゴリズムを古いものに戻してみたり等、少々ややこしくなりましたが、導入は無事完了しました。

 ネットワークトラフィック・CPU使用率・メモリの3項目を記録するようにしました。(user:guest pass:guest)でご覧いただけます。グラフ描画には若干時間が掛かりますが、5分ごとに実行されるポーリング(記録)は軽いので許容範囲です。

 P2P地震情報の参加ピア数とかも、記録の対象にしてしまえば一括で表示出来て便利かも。


2006年06月03日 Apacheに乗り換え/tDiaryの静的出力

_ [Web]Apacheに乗り換え

 tDiaryを静的生成する方法はないものかと探していると、tmaeda 日記 - 負荷対策:静的 HTML 化を発見。「そうか! mod_rewriteか!」と思ったものの、サーバはAN HTTPD…

 この雑記のアクセスが増えることは恐らくないと思いますが、この際にと面白半分でApacheに乗り換えちゃいました。

 最新エントリも含めて静的出力するようにして、自己満足です。パフォーマンスも向上しました。

_ [Web]tDiaryを最新エントリまで静的出力する方法

 引数なしでindex.rbが呼ばれる状態、いわゆる「トップページ(最新エントリ)」も静的出力する方法です。あまり良い方法とは言えませんが… mod_rewriteと.htaccessを使えることが大前提です。

最初の追加内容

 tmaeda 日記 - 負荷対策:静的 HTML 化を参考に、「mod_rewriteの設定」以外をやってしまいます。もちろん、キャッシュの出力先などは必要に応じて変更します(相対パス可)。

index.rbの変更

コメント投稿時にキャッシュを削除する

 最初のほうにある、コメント投稿時の処理

if @cgi.valid?( 'comment' ) then

 の直後に、次の4行を追加します。

cache = "トップページのファイル名 [例]./index.html"
if FileTest.exist?(cache) then
  File.delete(cache)
end
キャッシュを出力する

 「負荷対策:静的 HTML 化 - comment が投稿されたら、キャッシュを削除」で追加した、

if @cgi.valid?( 'date' ) then
  (中略)
        f.write "#{Time.now} static cache written(#{@cgi['date']}.html).\n"
      }
    }
  end
end

 の最後の「end」を削除し、次の内容を追加します。

elsif @cgi.valid?( 'category' ) then
else
  File.open("トップページのファイル名 [例]./index.html", "w") {|f|
  f.write body
  }
end

update.rbの変更

記事投稿時にキャッシュを削除する

 「負荷対策:静的 HTML 化 - 記事を更新したらキャッシュを削除」で追加した、

def delete_cache(cgi)
  date_string = sprintf("%04d%02d%02d", cgi['year'], cgi['month'], cgi['day'])
  (中略)
  end
end

 の「def delete_cache(cgi)」の後に、次の内容を追加します。

  cache = "トップページのファイル名 [例]./index.html"
  if FileTest.exist?(cache) then
    File.delete(cache)
  end

.htaccessの設定

 mod_rewriteを利用して、キャッシュのあるものはキャッシュへ、そうでないものはindex.rbへ飛ばします。

RewriteEngine on

# キャッシュのあるページへは、そのキャッシュを読ませる
RewriteCond %{REQUEST_URI} ^\/diary\/([0-9]+\.html$)
RewriteCond /WWW/diary/cache/%1 -f
RewriteRule .* cache/%1 [L]

# キャッシュのないページへは、index.rbで表示させる
RewriteRule ^([0-9]+)\.html$ index.rb?date=$1 [L]

# コメントの投稿であれば、index.rbに飛ばす
RewriteCond %{REQUEST_URI} ^\/diary\/$
RewriteCond %{REQUEST_METHOD} ^POST$
RewriteRule .* index.rb [L]

# カテゴリの選択であれば、index.rbに飛ばす
RewriteCond %{REQUEST_URI} ^\/diary\/$
RewriteCond %{REQUEST_METHOD} ^GET$
RewriteCond %{QUERY_STRING} ^.+$
RewriteRule .* index.rb [L]

# トップのキャッシュがなければ、やはりindex.rbへ
RewriteCond %{REQUEST_URI} ^\/diary\/$
RewriteCond %{QUERY_STRING} ^$
RewriteCond /WWW/diary/index.html !-f
RewriteRule .* index.rb [L]

 これで静的出力はばっちりです。


2006年06月02日 情報収集の方法

_ [Web]情報収集の方法

 SleipnirからOperaに乗り換えたのは、使い続けていくうちに細かなところに不満があったのと、Sleipnirに飽き飽きしてきたこと。Operaというブラウザが軽いらしいと聞いて、ただそれだけでOperaをインストールし、現在もOperaを使っています。

 それはどうでもいいのです。しばらくして、RSSという見慣れない単語がネット上に出現するようになって、OperaがRSSをサポートしました。「RSSとはなんぞや」と言っていた頃が懐かしく思えます。その時に、様々なWebサイトのRSSを生成している所を見つけて、片っ端からRSSを登録しました。OperaのRSS機能は「メーラー型」で、新しいアイテムは未読として増えていき、読み終えたものを削除していくことが出来ます。たくさんのニュースを、残さず目を通すようになりました。

 その後、RSSを提供するWebサイトは一気に増えました。また、特定文字列の間を抽出しRSS化するスクリプトも出現し、ますますRSSの存在感が増してきました。「はてなブックマーク」や「注目URL」といったRSSも登録し、インターネット上で注目されている事柄までもを、RSSで知ることが出来るようになりました。

 そして今に至ります。よく考えてみると、毎日巡回する1サイトや2chのスレッド、そして調べ物をする時以外は、全部RSSに依存するようになりました。自動的に増えていくRSSに目を通し、話のネタにする。これまでより圧倒的に小さな労力で、より大きなものを得られるようになりました。

 その一方で、自ら面白いネタを探すことがなくなりました。わざわざ探さなくても、RSSで流れてくるからです。もちろん、これは非常に良いことだと思います。ただ、これによって「面白いネタ」を得ることは出来ますが、「面白いネタ『を見つけた』」という事実を得ることは出来なくなりました。

 オチはありません。


2006年06月01日

_ 思い出し笑い

 おととい駅の構内で薬が落ちてた。

_ 筆跡

 人によって、字のクセや書き方って結構違うものなんだなぁ、と思う今日この頃でした(過去形)。