supercacheという、普通にCGIの結果をユーザに返すだけでなく静的HTMLにもしておき、後続の(いくつかの)同じ情報へのアクセスをそれで返してしまおう、というのがあります。
これはmod_rewriteでやるので良いのですが、更新日時を見てエクスパイヤさせたい(HTMLはあるけどあえてCGIに回して更新させたい)場合、やはりRwriteMapのprgを使うが良いのだろうか。。思案中。
ちなみに、RewriteMapで外部プログラムを使用する場合はRewriteLockでロックファイルを指定する必要があるらしいので注意。
月曜日, 2月 25, 2008
日曜日, 2月 24, 2008
[Linux] mMesure
mMesureとは、チューニングポイントをアドバイスしてくれる機能が付いたMySQLのモニタリングツール(WebGUI)。有効性はともかくとして、PostgreSQLでもこの手のツールがそろそろ(市場として)必要になってくると思います。
土曜日, 2月 23, 2008
[Linux] Workflowエンジン
金曜日, 2月 22, 2008
[Linux] scpだけ許すには
scpの実体はsshらしく、制限するにはバイナリとして入れ替えるしかなさそう。これをする場合はscponlyというのや、rsshというのが候補。
別の方法としてOpenSSHとして当該ユーザの実行可能コマンドを制限してしまえば、まぁ良いといえばよいような。Matchという全体オプションでやるか、個人のAuthorized_keys内でもcommandオプションで制限できるのでこれを使うか(でもこれはユーザが自発的に書き換え可能だからセキュリティ的には微妙)。
別の方法としてOpenSSHとして当該ユーザの実行可能コマンドを制限してしまえば、まぁ良いといえばよいような。Matchという全体オプションでやるか、個人のAuthorized_keys内でもcommandオプションで制限できるのでこれを使うか(でもこれはユーザが自発的に書き換え可能だからセキュリティ的には微妙)。
木曜日, 2月 21, 2008
[Linux] ngnixの処理指定
ぜんぜん良く分かっていないが、RTSIGというのはlibrtを使った非同期IO機構であり、これとEPOLLは並列な様子(ngnixのソース内の分岐がそうなっているように見えるので)。
というか、事実実験している環境ではobjs/Makefileの中でもrtsig、epoll、sendfileをリンクする指定になっていた。
librtを使った非同期処理であればコンテキストスイッチが少なくなり(IO多重であるepollよりも)速い、とKLabさんの資料で読んだのだけど、どういう関係で実際のところどうなんだろう。
ngx_event_init_conf(ngx_cycle_t *cycle, void *conf)
{
ngx_event_conf_t *ecf = conf;
#if (NGX_HAVE_EPOLL) && !(NGX_TEST_BUILD_EPOLL)
int fd;
#endif
#if (NGX_HAVE_RTSIG)
ngx_uint_t rtsig;
ngx_core_conf_t *ccf;
#endif
ngx_int_t i, connections;
ngx_module_t *module;
ngx_event_module_t *event_module;
~snip~
というか、事実実験している環境ではobjs/Makefileの中でもrtsig、epoll、sendfileをリンクする指定になっていた。
~snip~
objs/src/event/modules/ngx_rtsig_module.o \
objs/src/event/modules/ngx_epoll_module.o \
objs/src/os/unix/ngx_linux_sendfile_chain.o \
~snip~
librtを使った非同期処理であればコンテキストスイッチが少なくなり(IO多重であるepollよりも)速い、とKLabさんの資料で読んだのだけど、どういう関係で実際のところどうなんだろう。
水曜日, 2月 20, 2008
[Linux] ldap-stats.pl
ファイル名でなんとなく想像がつくとおり、LDAPの統計情報を取るスクリプト。v2.3にも対応しているとのこと。以外にインフラ基盤の中でも「動いていてアタリマエ」になりがちなopenLDAPも、きっちり監視したいですね。
月曜日, 2月 18, 2008
[Linux] nginxとapache
ちまたで話題のNginxとapacheのパフォーマンスレポートを見つけました。面白いのはレスポンスタイム。
ブラウザ体感的にこんな効果があるなら、これだけで使ってみたいです。さらに、変わったところではmod_perlみたいにPerlを組み込みで使うことも出来るそうです。
ちなみに、lighttpdとの比較ではCPU負荷観点でnginxのほうが優れているとのことでした。
ブラウザ体感的にこんな効果があるなら、これだけで使ってみたいです。さらに、変わったところではmod_perlみたいにPerlを組み込みで使うことも出来るそうです。
ちなみに、lighttpdとの比較ではCPU負荷観点でnginxのほうが優れているとのことでした。
日曜日, 2月 17, 2008
[Linux] nginxのstatus
Nginxは運用者にとってちょっと制御してる感が持ちづらい(ワーカプロセス1つで1024コネクションって言われても。。)。コレを少しでも改善するためには./configure時に"--with-http_stub_status_module"をつけると良い。
あと、これを見られるようにlocationを指定すれば、apacheのmod_statusっぽい情報が得られるようになり少し安心できる気がする。
via kwout
あと、これを見られるようにlocationを指定すれば、apacheのmod_statusっぽい情報が得られるようになり少し安心できる気がする。
土曜日, 2月 16, 2008
[Linux] colinux-0.7.2
colinuxは、手軽に新しいアプリケーションを試すことができたり重宝している割に、バージョンアップに気が付いていませんでした。2.6.22ベースになったようです。
金曜日, 2月 15, 2008
[Linux] nginxの感想
この手のスレッドモデルなhttpdはどうも動作を掌握できている感が無くて困る。apacheのpreforkなんかだとプロセスがセッションに張り付いているのね、ふんふん、みたいに分かり易いが、スレッドモデルの場合はどう理解するのか。
まぁたとえば、なんとなくマニュアルには以下のようにある。
ので、唯一、同時接続数が上限に来ちゃうときのロジックはなんとなくわかった。
まぁたとえば、なんとなくマニュアルには以下のようにある。
max_clients = worker_processes * worker_connections
ので、唯一、同時接続数が上限に来ちゃうときのロジックはなんとなくわかった。
木曜日, 2月 14, 2008
水曜日, 2月 13, 2008
[Linux] nginx
nginxの実験をするためにコンパイル。
よくわからないエラーが出たら、それはpcre-develが入っていないからかもしれません。
バイナリが642kbって、、apacheとは比較にならないほど小さくてよいです。
よくわからないエラーが出たら、それはpcre-develが入っていないからかもしれません。
[tf0054@divers-high nginx-0.5.35]$ ./configure --prefix=/mnt/nginx-0.5.35 \
--with-http_stub_status_module \
--without-http_proxy_module \
--without-http_geo_module
~省略~
[tf0054@divers-high nginx-0.5.35]$ make
make -f objs/Makefile
make[1]: ディレクトリ `/home/tf0054/nginx-0.5.35' に入ります
cd /lib64 \
&& if [ -f Makefile ]; then make distclean; fi \
&& CC="gcc" CFLAGS="" \
./configure --disable-shared
/bin/sh: line 2: ./configure: そのようなファイルやディレクトリはありません
make[1]: *** [/lib64/Makefile] エラー 127
make[1]: ディレクトリ `/home/tf0054/nginx-0.5.35' から出ます
make: *** [build] エラー 2
[tf0054@divers-high nginx-0.5.35]$
バイナリが642kbって、、apacheとは比較にならないほど小さくてよいです。
月曜日, 2月 11, 2008
[Linux] supercache?
ウェブサイトのパフォーマンスを上げるために、アクセスされたときCGIからの出力結果を(ブラウザに返すだけではなく)静的ファイルにも吐いておき、次回以降はこの静的ファイルをapacheで読み込ませて返させよう、というのがよく行われます。
この方式、以外に呼び名に困るのですが、PHPのsymphonyというフレームワーク内ではsupercacheと呼ばれているそうです。。。名前としては微妙ですが、総称としてこれで呼び習わすことにしようと思います。
この方式、以外に呼び名に困るのですが、PHPのsymphonyというフレームワーク内ではsupercacheと呼ばれているそうです。。。名前としては微妙ですが、総称としてこれで呼び習わすことにしようと思います。
木曜日, 2月 07, 2008
[apache] Roller
movabletypeのような、ブログ生成ツール(というか彼らはCMSといっていますが)として、apacheファンデーションではRollerというのがあるそうです。
今現在v4.0として公開されており、ちょうどこのバージョンから(同団体の中での位置づけが)インキュベーションレベルから昇格したそうです。
意外に有名なわりにはMTはソースコードが微妙な気がするので、こっちの利用も検討しようと思います。
今現在v4.0として公開されており、ちょうどこのバージョンから(同団体の中での位置づけが)インキュベーションレベルから昇格したそうです。
意外に有名なわりにはMTはソースコードが微妙な気がするので、こっちの利用も検討しようと思います。
火曜日, 2月 05, 2008
[Linux] プロセス監視
登録:
投稿 (Atom)