火曜日, 4月 10, 2007
月曜日, 4月 09, 2007
日曜日, 4月 08, 2007
土曜日, 4月 07, 2007
[Linux] Tentakel
サーバ管理をしていると,複数台のサーバで同じコマンドを叩いてゆきたいことが,たまにある.こんなときにはTentakel.マルチスレット実行なのでレスポンスが遅いサーバにも影響されないのが良いようです.
金曜日, 4月 06, 2007
[Linux] Selenium
ずっとWebの負荷テストにはJMeterを用いてきたが,Seleniumというのが最近流行らしい.Firefoxが動くことなどが条件にあるようなので実際にブラウザ操作をしちゃうのかな?
本家はコチラ.
JMeterとは異なり、負荷試験という視点ではなく正常性確認という意味でのテストを行うツールです。が、SeleniumRCというのでリモートからPCを制御し、複数試験もできるといえばできる様子です。
本家はコチラ.
JMeterとは異なり、負荷試験という視点ではなく正常性確認という意味でのテストを行うツールです。が、SeleniumRCというのでリモートからPCを制御し、複数試験もできるといえばできる様子です。
木曜日, 4月 05, 2007
[Linux] DSAS資料
「DSASのあれこれ」という資料が公開されていました.RSTPの組み方や,タグVLAN@Linux,IPVSとkeepalivedなどOSSでインフラを組むときに参考になる情報がてんこ盛りです.
この手の資料を普通に公開してしまうところが,KLabさんが偉いところだなぁと思います.
この手の資料を普通に公開してしまうところが,KLabさんが偉いところだなぁと思います.
水曜日, 4月 04, 2007
火曜日, 4月 03, 2007
月曜日, 4月 02, 2007
土曜日, 3月 31, 2007
金曜日, 3月 30, 2007
木曜日, 3月 29, 2007
[EC2] ディスクについて
FC4のpublicAMIを使っているのですが,ディスク割りが微妙ですね..
[tf0054@domU-12-31-XX-00-03-A8 tmp_20070328a]$ df -H
Filesystem Size Used Avail Use% マウント位置
/dev/sda1 11G 5.6G 4.5G 56% /
none 892M 0 892M 0% /dev/shm
/dev/sda2 158G 3.8G 146G 3% /mnt
[tf0054@domU-12-31-XX-00-03-A8 tmp_20070328a]$ ls -la
バックアップデータが溢れるまで"/"に11Gしか割り当てられていないことに気が付きませんでした../var/tmp以下をとりあえず"/mnt"以下へのリンクに書き換えて対応しました.
> sudo mkdir tmp
> sudo chmod 1777 tmp
[tf0054@domU-12-31-XX-00-03-A8 tmp_20070328a]$ df -H
Filesystem Size Used Avail Use% マウント位置
/dev/sda1 11G 5.6G 4.5G 56% /
none 892M 0 892M 0% /dev/shm
/dev/sda2 158G 3.8G 146G 3% /mnt
[tf0054@domU-12-31-XX-00-03-A8 tmp_20070328a]$ ls -la
バックアップデータが溢れるまで"/"に11Gしか割り当てられていないことに気が付きませんでした../var/tmp以下をとりあえず"/mnt"以下へのリンクに書き換えて対応しました.
> sudo mkdir tmp
> sudo chmod 1777 tmp
水曜日, 3月 28, 2007
火曜日, 3月 27, 2007
[Linux] tarでのディレクトリコピー
意外に忘れるのでメモ.
|
月曜日, 3月 26, 2007
土曜日, 3月 24, 2007
金曜日, 3月 23, 2007
[EC2] Powerset
Powersetというところは,EC2を400ノード上げ,かつS3をストレージに使い,自然言語による検索エンジンをやっているとのこと(出所はhadoopのwiki).
なんだけどPowersetのページにいっても,実用できないような気がする.どこで公開しているのかな.
なんだけどPowersetのページにいっても,実用できないような気がする.どこで公開しているのかな.
木曜日, 3月 22, 2007
水曜日, 3月 21, 2007
[search] Quintura.com
クラスタリング検索といっても,見せ方が大事なんだな,と(当たり前ですが)再認識させてくれるサイトQuinturaがありました.
ダイナミックドリルダウンという手法は各所で取り入れられてきていますが,その次が出ない感じがしています.
ダイナミックドリルダウンという手法は各所で取り入れられてきていますが,その次が出ない感じがしています.
火曜日, 3月 20, 2007
[Linux] puppet
puppetという各種設定ファイルのサーバ群における管理ツールがあるらしい(この認識はあっているのかな).いぜんはてなさんの情報で,同様のなんとかTowerというのが良いと聞いたがそれとタメを張るものだろうか.
以前はCfengineというのの記事を読んだことがあるのだけれど,それよか抽象度を上げて設定ファイルを書けることがすばらしいとのこと.
mizzy.orgさんのところには結構puppetの情報がまとまっていそうなので参考にしたいです.
以前はCfengineというのの記事を読んだことがあるのだけれど,それよか抽象度を上げて設定ファイルを書けることがすばらしいとのこと.
mizzy.orgさんのところには結構puppetの情報がまとまっていそうなので参考にしたいです.
月曜日, 3月 19, 2007
[search] Written in java
JAVAで書かれた全文検索エンジンが多数紹介されているページがありました.DBオフローディングを目指しての採用もありますし,この分野は商用的に最近熱いですね.
日曜日, 3月 18, 2007
[PostgreSQL] pg_bulkload
pg_bulkloadなるものがNTTDさん作成で出来ているもよう(以前DWH系で近しいものが海外で出ていたような気がするけれど).
WALをすっ飛ばしてかつIDX再構成のところを工夫することで,IDXをdropして投入後にcreateするよりも早いらしい(このロジックはよくわからない).
オラクルとPgSQLの差異で,ダイレクトパスロードのことは実はよく話題になったりするので注目に値すると思います.最近NTTDさんはPgSQLではがんばっていますね.
WALをすっ飛ばしてかつIDX再構成のところを工夫することで,IDXをdropして投入後にcreateするよりも早いらしい(このロジックはよくわからない).
オラクルとPgSQLの差異で,ダイレクトパスロードのことは実はよく話題になったりするので注目に値すると思います.最近NTTDさんはPgSQLではがんばっていますね.
土曜日, 3月 17, 2007
[PostgreSQL] 逆キーIDXと転置IDX
金曜日, 3月 16, 2007
[Linux] Scalix
Scalixというよさげなグループウェアがあるらしい.ウェブメール機能がベースのようですが,サイボウズに食われすぎているこのドメインでオープンソースがどこまで行けるか,興味があります.
木曜日, 3月 15, 2007
水曜日, 3月 14, 2007
火曜日, 3月 13, 2007
[Linux] MetaVNC
日曜日, 3月 11, 2007
土曜日, 3月 10, 2007
金曜日, 3月 09, 2007
[search] ipadicとは
水曜日, 3月 07, 2007
[search] MeCabの辞書
火曜日, 3月 06, 2007
[search] 係り受け解析
日曜日, 3月 04, 2007
[Linux] svn@http
webdavを使ってsvnを公開する方法(FC4@EC2).
当然だが昨今の会社におけるインターネット環境はhttpに制限されていたりするので,webdavの需要は逆に増えているのかも.
- yumでmod_dav_svnをインストール
- conf.d/subversion.confを設定(SVNParentPathには注意)
当然だが昨今の会社におけるインターネット環境はhttpに制限されていたりするので,webdavの需要は逆に増えているのかも.
土曜日, 3月 03, 2007
[EC2] with LVS
金曜日, 3月 02, 2007
木曜日, 3月 01, 2007
水曜日, 2月 28, 2007
[Linux] 日本語Eclipse
Solrのためにjavaに手を出すしかなくなり(これまでjavaは学生バイトで使ったことがあったくらい≒メモ帳で書いてた),Eclipseに手を出すしかなくなった..
"MergeDoc Project"で配られているプラグインを指定して日本語化して利用中.
"MergeDoc Project"で配られているプラグインを指定して日本語化して利用中.
火曜日, 2月 27, 2007
月曜日, 2月 26, 2007
日曜日, 2月 25, 2007
[Linux] findでファイル削除
よく忘れるのでメモ.
注意として、ディレクトリ名のところはシンボリックリンクではだめなようです(例えば"/mnt/tmp"を実態として"/var/tmp"をリンクとしている場合は"/mnt/tmp"と指定する必要がある)。あと、同様のことをやるには下記もありですね。
ちなみにxargsの"-n"引数は、その個数分(STDINから)入力されるたびにそれを引数としてコマンド(ここではrm)を実行してくれるようにするオプション。
|
注意として、ディレクトリ名のところはシンボリックリンクではだめなようです(例えば"/mnt/tmp"を実態として"/var/tmp"をリンクとしている場合は"/mnt/tmp"と指定する必要がある)。あと、同様のことをやるには下記もありですね。
sudo find / -mtime +10 -type f | sudo xargs -n 10 rm --
ちなみにxargsの"-n"引数は、その個数分(STDINから)入力されるたびにそれを引数としてコマンド(ここではrm)を実行してくれるようにするオプション。
金曜日, 2月 23, 2007
[Linux] vimでバイナリ編集
kawaz.jpにあるvimのコマンド一覧に書いてある方法で、RHEL4にてバイナリモードで開くことに成功。便利ですね。
また、あまりにでかいファイルをバイナリ編集するにはコノページが参考になりそうですが、なんかバイナリを壊してしまうようでうまくいきませんでした。。。(tailコマンドとかって改行変換しちゃうのかな)。
また、あまりにでかいファイルをバイナリ編集するにはコノページが参考になりそうですが、なんかバイナリを壊してしまうようでうまくいきませんでした。。。(tailコマンドとかって改行変換しちゃうのかな)。
木曜日, 2月 22, 2007
[Linux] SVN::Webしたい
入れてみようと苦戦中(SVN::Webいいねコレ).
SVN::Coreというモジュールに依存していて,まずこれがCPANじゃ取れない.
調べて結局subversion本体の中にあることが分かったので,rpmを探し,EC2(FC4)の場合はyumでsubversion-perlという名前で入るそうなので入れてみた.
のだけど,でも今のSVN::Web(v0.52)にとっては古すぎるらしいので,subversionを最新版にしてSVN::Coreも作ろうとしたけど,今度はaprとapr-utilの両方が(FC4の0.9.6では)古すぎた.
というわけでapr系2個をコンパイルしてやっと本体へ.
コンパイルは終了したが,今度は非rootだとapacheモジュールのインストール時点で"make install"がコケる(--disable-mod-activationとしてもだめだった).
というわけでMakefileにある"APACHE_LIBEXECDIR"を書き換えて変なところへインストールさせてやっと完了..
先は長い.
SVN::Coreというモジュールに依存していて,まずこれがCPANじゃ取れない.
調べて結局subversion本体の中にあることが分かったので,rpmを探し,EC2(FC4)の場合はyumでsubversion-perlという名前で入るそうなので入れてみた.
のだけど,でも今のSVN::Web(v0.52)にとっては古すぎるらしいので,subversionを最新版にしてSVN::Coreも作ろうとしたけど,今度はaprとapr-utilの両方が(FC4の0.9.6では)古すぎた.
というわけでapr系2個をコンパイルしてやっと本体へ.
コンパイルは終了したが,今度は非rootだとapacheモジュールのインストール時点で"make install"がコケる(--disable-mod-activationとしてもだめだった).
というわけでMakefileにある"APACHE_LIBEXECDIR"を書き換えて変なところへインストールさせてやっと完了..
先は長い.
月曜日, 2月 19, 2007
日曜日, 2月 18, 2007
土曜日, 2月 17, 2007
金曜日, 2月 16, 2007
[Linux] Quercus
またMYCOMから仕入れたネタですが,Resinというサーブレットエンジンには,PHPを稼動させることが出来るQuercusというPHPプロセッサが載っているらしい.
本当かどうか不明ですが,PHPはアクセラレータ(eAccerelator)を入れても1.5倍の速度を稼ぐのがよいとこだった経験があるので,,ちょっと調べてみたいです.
mod_phpよりも高速であり、PHPのパフォーマンス・アクセラレータを適用した場合に匹敵した性能。
本当かどうか不明ですが,PHPはアクセラレータ(eAccerelator)を入れても1.5倍の速度を稼ぐのがよいとこだった経験があるので,,ちょっと調べてみたいです.
火曜日, 2月 13, 2007
月曜日, 2月 12, 2007
日曜日, 2月 11, 2007
[search] Solrお試し2
Solrには,JapaneseAnalyzerが入っていない.今はSolrのexampleで試しているので,そこのwebapp内にあるsolr.warを展開し(warは普通のZIPファイルだから,拡張子を".zip"にして展開できる),中のWEB-INF\libにlucene-ja.jarとsen.jarを入れ込んだ.
warを作りなれている人には当たり前かもしれないけれど,展開したディレクトリに入ってjarしないとディレクトリ構成が当初と変わってしまうので注意.あと,環境変数にSEN_HOMEを指定していたとしても何故か効かないので,起動時に引数として与える必要がある.
これでインデクス時には問題が出なくなったけれど,どうもexampleにあるadmin画面では検索に引っかからない..何故?
Solr(というかLucene)のインデクスをダンプするツールなどは無いものだろうか.Lukeというインデクスブラウザがあったようだが,使い方がよく分からない.それに(Luceneライブラリが)v1.9対応のようだし・・.
jar cvf ..\solr.war .\
warを作りなれている人には当たり前かもしれないけれど,展開したディレクトリに入ってjarしないとディレクトリ構成が当初と変わってしまうので注意.あと,環境変数にSEN_HOMEを指定していたとしても何故か効かないので,起動時に引数として与える必要がある.
java -Dsen.home=d:\Solr\sen -jar start.jar
これでインデクス時には問題が出なくなったけれど,どうもexampleにあるadmin画面では検索に引っかからない..何故?
Solr(というかLucene)のインデクスをダンプするツールなどは無いものだろうか.Lukeというインデクスブラウザがあったようだが,使い方がよく分からない.それに(Luceneライブラリが)v1.9対応のようだし・・.
土曜日, 2月 10, 2007
[search] Solrお試し
SolrのチュートリアルをWindowsでやってみた.
ドキュメント登録はhttpでPOSTしなくてはならないらしい(post.shより)ので,cURLのWindows版を取ってきて以下のようにした.
いちおう検索は出来ている様子.これに日本語を通さないとね.
追伸:
韓国ではLuceneがブームなんですね.
追伸2:
ちなみにcurlでproxyを使うときは"-x localhost:8080"みたいなオプションで。
ドキュメント登録はhttpでPOSTしなくてはならないらしい(post.shより)ので,cURLのWindows版を取ってきて以下のようにした.
d:\Solr\curl\curl.exe --data-binary @hd.xml -H "Content-type:text/xml; charset=utf-8" http://localhost:8983/solr/update
~snip~
d:\Solr\curl\curl.exe --data-binary @vidcard.xml -H "Content-type:text/xml; charset=utf-8" http://localhost:8983/solr/update
d:\Solr\curl\curl.exe --data-binary "<commit/>" -H "Content-type:text/xml; charset=utf-8" http://localhost:8983/solr/update
d:\Solr\curl\curl.exe --data-binary "<delete><id>3007WFP</id></delete>" -H "Content-type:text/xml; charset=utf-8" http://localhost:8983/solr/update
いちおう検索は出来ている様子.これに日本語を通さないとね.
追伸:
韓国ではLuceneがブームなんですね.
追伸2:
ちなみにcurlでproxyを使うときは"-x localhost:8080"みたいなオプションで。
金曜日, 2月 09, 2007
木曜日, 2月 08, 2007
[Linux] PostgreSQLの特徴
水曜日, 2月 07, 2007
火曜日, 2月 06, 2007
月曜日, 2月 05, 2007
[Search] Nutch+Hadoop
日曜日, 2月 04, 2007
[Linux] MoinMoin
土曜日, 2月 03, 2007
[WEB] Zirr.us
前どっかでみて気になっていた個人タスク管理ウェブZirrusが日本語入力可能になりました.
優先度がスライドバーで簡単に設定でき,また,ToDoをタグクラウドで表現してるし,無論RSSフィードもあるし...ちゃんと使ってみたいと思っています.
優先度がスライドバーで簡単に設定でき,また,ToDoをタグクラウドで表現してるし,無論RSSフィードもあるし...ちゃんと使ってみたいと思っています.
金曜日, 2月 02, 2007
[Search] Nutch
木曜日, 2月 01, 2007
水曜日, 1月 31, 2007
[EC2] 事例:Mux
ビデオコンバータのCPUをEC2に,保存先をS3にするという例が紹介されていました.
確かにCPU時間がとても必要で,かつデータ保存にはさほどI/Oが必要ない(必要なさそう)という,うってつけの課題ですね.
確かにCPU時間がとても必要で,かつデータ保存にはさほどI/Oが必要ない(必要なさそう)という,うってつけの課題ですね.
火曜日, 1月 30, 2007
[search] オンメモリLucene?
Luceneはインデクスが遅いなど,メモリを有効活用しないと遅いよ,と聞いていた.
そんな中オンメモリLuceneの記事を見つけた.是非時間をとって読みたいと思います.
そんな中オンメモリLuceneの記事を見つけた.是非時間をとって読みたいと思います.
月曜日, 1月 29, 2007
[EC2] サーバ共有+グリッド
TechCrunchでEC2とは違うリソースオンデマンドサービスで"Grid Server"というものが紹介されていることに気がついた.
"Media Temple"という会社がやっているようで,EC2とは異なり数百台からなるサーバを皆で共有し,急激なトラフィック増などに耐えるサイト構築が可能とのこと.
アプリの組み方などはクセがありそうに思うものの,LAMPが簡単にセットアップできるらしいこともあり,リソースオンデマンドで本来(ウェブのサービスを上げる際に)欲しい機能にフォーカスしていそうな気がします.
要調査.
"Media Temple"という会社がやっているようで,EC2とは異なり数百台からなるサーバを皆で共有し,急激なトラフィック増などに耐えるサイト構築が可能とのこと.
アプリの組み方などはクセがありそうに思うものの,LAMPが簡単にセットアップできるらしいこともあり,リソースオンデマンドで本来(ウェブのサービスを上げる際に)欲しい機能にフォーカスしていそうな気がします.
要調査.
日曜日, 1月 28, 2007
土曜日, 1月 27, 2007
水曜日, 1月 24, 2007
月曜日, 1月 22, 2007
土曜日, 1月 20, 2007
[EC2] SOAPSonarでEC2を操作する?
CrossCheckNetworksという会社が出しているSOAPSonarというウェブサービスのテストツールを使いこなせば,これをEC2の操作(インスタンスの上げ下げ)GUIとして使うことが出来る,という記事を見つけた(SOAPSonar を使ったEC2のプロビジョニング(英語)).
普通に操作が出来るだけのように思えるが,これをプロビジョニングできる,と出し方をしてしまうところが..日本人にはまねできない,と思います.
先のものはコレをさらに進めたものなのなのでしょうね.
あと,納得感があったのが「BPELでシステム開発を行う,というのはでもその実ウェブサービスのマッシュアップと同じでは」というこの記事.
普通に操作が出来るだけのように思えるが,これをプロビジョニングできる,と出し方をしてしまうところが..日本人にはまねできない,と思います.
先のものはコレをさらに進めたものなのなのでしょうね.
あと,納得感があったのが「BPELでシステム開発を行う,というのはでもその実ウェブサービスのマッシュアップと同じでは」というこの記事.
金曜日, 1月 19, 2007
[EC2] Enomalism
Enomalismでも,実はEC2の操作ができるようになっているみたい.
というか,そもそもXenのコンソールとして開発されているのだから,その集大成であるEC2が操作できるように拡張されていても不思議はない,ですが.
というか,そもそもXenのコンソールとして開発されているのだから,その集大成であるEC2が操作できるように拡張されていても不思議はない,ですが.
木曜日, 1月 18, 2007
[EC2] OracleのSOAツールとEC2の融合策?
"Oracle Application Server"をベースにすることで,EC2を使ったウェブサービスサイト構築が,これまでとは全く異なるステージ(例:負荷が増えたらコマンド一発でウェブサーバ追加)で可能になるのでは,という
記事を見つけた.
ポイントは,
といったところです(あと正確には,全社は作ったWDSLを別のSOAPSonarというツールからSOAPoverHTTPという形で操作するような).でもそもそもBPELって..?
この手のは操作性や必要となる作りこみの分量が気になるけど,検証する時間(個人的時間)が必要なので最近出来ないです.
記事を見つけた.
こちらも参照のこと
ポイントは,
- "BPEL Process Manager"を使ったインスタンス操作.
- その上でOASを動かし,トランザクションを操縦(EC2を使ったHAクラスタ化や負荷分散).
といったところです(あと正確には,全社は作ったWDSLを別のSOAPSonarというツールからSOAPoverHTTPという形で操作するような).でもそもそもBPELって..?
この手のは操作性や必要となる作りこみの分量が気になるけど,検証する時間(個人的時間)が必要なので最近出来ないです.
水曜日, 1月 17, 2007
火曜日, 1月 16, 2007
[Perl] goo辞書ガジェット
goo辞書は便利なのでよく利用する.
が,いくら便利でもページ移動が(URLでdictionaryと打つのも..ブックマークでの選択すら)面倒な場合があったので,(Web)ガジェット化してみた.
まだ「読み込み中」やらは出来ていないが,とりあえず想像以上に便利.
構造としては,EC2上のサーバにCGIを置き,そのCGIからLWPでgooさんへ問い合わせ,そこから単語説明を切り出して返却する形(Javascriptが得意な人は全てJSだけで作っちゃったりするのかな).
CGIの内部としては,Template::Extractorで取り出してTemplate::Toolkitで表示する形.後者TTは要らないといえば要らないが,使ってみたかったので.
ちなみにガジェットについてはコチラを参考して作った.
が,いくら便利でもページ移動が(URLでdictionaryと打つのも..ブックマークでの選択すら)面倒な場合があったので,(Web)ガジェット化してみた.
まだ「読み込み中」やらは出来ていないが,とりあえず想像以上に便利.
構造としては,EC2上のサーバにCGIを置き,そのCGIからLWPでgooさんへ問い合わせ,そこから単語説明を切り出して返却する形(Javascriptが得意な人は全てJSだけで作っちゃったりするのかな).
CGIの内部としては,Template::Extractorで取り出してTemplate::Toolkitで表示する形.後者TTは要らないといえば要らないが,使ってみたかったので.
ちなみにガジェットについてはコチラを参考して作った.
月曜日, 1月 15, 2007
日曜日, 1月 14, 2007
土曜日, 1月 13, 2007
[Catalyst] 11万行/600クラス
金曜日, 1月 12, 2007
木曜日, 1月 11, 2007
水曜日, 1月 10, 2007
[Linux] MogileFSについて
MogileFSというのが最近ちょっとホットらしい(実践MogileFS構築事例 〜Catalystと一緒〜).
どっかで読んだのだけど,PostgreSQLの裏に使えるとか,そもそもMogileFS自体の裏にmemcachedに出来るようになったとか...
もうちょっと調べてみたい.
でもそもそも,これって"Six Apart"さんなんですねぇ(解説記事).だからどうというわけではないですが...
どっかで読んだのだけど,PostgreSQLの裏に使えるとか,そもそもMogileFS自体の裏にmemcachedに出来るようになったとか...
もうちょっと調べてみたい.
でもそもそも,これって"Six Apart"さんなんですねぇ(解説記事).だからどうというわけではないですが...
火曜日, 1月 09, 2007
[Catalyst] 実行中のAction名を取るには?(2)
callerという(組込み)関数を使えば,forawrdされたAction内から呼び出し元のAction名を取得することができた.
まぁ,この方法じゃあCatalyst内部での呼ばれ順序が変更及び追加になったら一発アウトですが.しかしこんな関数は,使ったことなかったなー.
(caller(8))[3]
まぁ,この方法じゃあCatalyst内部での呼ばれ順序が変更及び追加になったら一発アウトですが.しかしこんな関数は,使ったことなかったなー.
月曜日, 1月 08, 2007
[Catalyst] 実行中のAction名を取るには?
"$c->action->name"で取れるのかと思いきや,,forwardした後は追随されない?
例えば上記の場合,mkMessage内で"$c->action->name"を見ても"adminEditF"ママ.
そらそうと言えばそうなのかも知れない(不勉強)けど,なんとか取れないものか.
同じようにインスタンスが持ってるメソッド一覧を見る方法もないのかなぁ(不勉強2).
.----------------------------------------------------------------+-----------.
| Action | Time |
+----------------------------------------------------------------+-----------+
| /begin | 0.000602s |
| /auto | 0.000352s |
| /admin/root | 0.000151s |
| /admin/adminEditF | 0.073384s |
| -> /admin/adminList | 0.014009s |
| -> /admin/mkMessage | 0.000851s |
| /end | 0.362402s |
| -> htAxess::View::TT->process | 0.358067s |
'----------------------------------------------------------------+-----------'
例えば上記の場合,mkMessage内で"$c->action->name"を見ても"adminEditF"ママ.
そらそうと言えばそうなのかも知れない(不勉強)けど,なんとか取れないものか.
同じようにインスタンスが持ってるメソッド一覧を見る方法もないのかなぁ(不勉強2).
日曜日, 1月 07, 2007
[Perl] Template::Extract
各所で話題だったTemplate::Extractを使ってみた。が、別に構造解析をして抜き出しているわけではないんですね。
たとえば、diggのTOPページにあるニュースを抜き出すようにイメージして下記を指定しても、、意図した全部抜きはできず、最初に表れる<\/div>までしか取ってくれない様子。
なーんだ。まぁでも下のようにすれば問題ないといえばないですが、、正規表現でやってるのとさほど変わらないなぁ、という印象。
何が入ってくるか不明な場合は、[% ... %]を使えばOKなのは便利。
たとえば、diggのTOPページにあるニュースを抜き出すようにイメージして下記を指定しても、、意図した全部抜きはできず、最初に表れる<\/div>までしか取ってくれない様子。
Top 10 in All Topics
[% news %]
なーんだ。まぁでも下のようにすれば問題ないといえばないですが、、正規表現でやってるのとさほど変わらないなぁ、という印象。
Top 10 in All Topics
[% news %]
<div class="side-container">
何が入ってくるか不明な場合は、[% ... %]を使えばOKなのは便利。
土曜日, 1月 06, 2007
[EC2] S3InfiniDisk
コチラで公開されているもので,機能としては「S3をEC2インスタンス上からマウントできるようにするツール(Java)」のよう.
コミュニティ版(無料)とエンタープライズ版(有料=$195)があり,後者はキャッシュ機能を組み込んであるらしい.
このような気の利いたサービス(?)が展開されることはとてもすばらしいことだと思います.
コミュニティ版(無料)とエンタープライズ版(有料=$195)があり,後者はキャッシュ機能を組み込んであるらしい.
このような気の利いたサービス(?)が展開されることはとてもすばらしいことだと思います.
金曜日, 1月 05, 2007
[Catalyst] TTSite便利そう
火曜日, 1月 02, 2007
月曜日, 1月 01, 2007
[Linux] 画像によるサイト検索(Pagebull)
ちょっと気に入っているウェブページが画像で表示される検索エンジン(裏はYahoo!のWebサービスらしいが).
PageBull
これを常用したかったのでFirefoxの検索窓に入れるべく簡単なアドオンを書いてみた.
Firefox 検索窓用Pagebullプラグイン(Fx2.0以上向け)
微妙だったのはPagebullのfavicon.icoは32x32サイズだったことと,その画像をxml内部にbase64エンコードして入れなくちゃいけなかったこと.
後者(エンコード)はコチラでやったのを貼り付けただけだけど,ちゃんと使えるようなのでまぁよし.
xml内部タグの意味が知りたいという(奇特な)方はコチラを参照のこと.
PageBull
これを常用したかったのでFirefoxの検索窓に入れるべく簡単なアドオンを書いてみた.
Firefox 検索窓用Pagebullプラグイン(Fx2.0以上向け)
微妙だったのはPagebullのfavicon.icoは32x32サイズだったことと,その画像をxml内部にbase64エンコードして入れなくちゃいけなかったこと.
後者(エンコード)はコチラでやったのを貼り付けただけだけど,ちゃんと使えるようなのでまぁよし.
xml内部タグの意味が知りたいという(奇特な)方はコチラを参照のこと.
日曜日, 12月 31, 2006
[Linux] Catalystデモから勉強したこと(Chain)
CPANのCatalyst/DispatchType/Chaine
の要約とテストからのメモ.
Chained属性では,準備した関数間の連結(前に来る関数名を指定)を行います(引数を省略した場合は"/"扱い).またPathPart属性でその後に来る実URLを記述します(引数無しは関数名を実URLとして扱います).
CaptureArgs属性で,内部処理に使う後続URLパスのデータ個数を定義(個数を指定しない場合は無制限(に受け取る))でき,その値を受け取ることができます.Args属性は(CaptureArgs属性と近しいですが)chianがその関数で終了するときに利用します(下の例では,値の受け渡しは@_で行われている).
コンテキスト経由で値を処理する場合はCaptureArgsとArgsでは格納場所が違い,前者は$c->request->captures->[$level]であり($levelにはそれまでキャプチャされたURLパス文字列が配列格納される),後者は$c->request->argumentsに格納される.
またとても参考になる(より複雑な)例はこちら.
の要約とテストからのメモ.
Chained属性では,準備した関数間の連結(前に来る関数名を指定)を行います(引数を省略した場合は"/"扱い).またPathPart属性でその後に来る実URLを記述します(引数無しは関数名を実URLとして扱います).
このときChained('.')と指定することができ,その時点でのコントローラでの名前空間パスが入る,,らしいが使い方がいまいち不明.
CaptureArgs属性で,内部処理に使う後続URLパスのデータ個数を定義(個数を指定しない場合は無制限(に受け取る))でき,その値を受け取ることができます.Args属性は(CaptureArgs属性と近しいですが)chianがその関数で終了するときに利用します(下の例では,値の受け渡しは@_で行われている).
sub wiki : PathPart('wiki') Chained('/') CaptureArgs(1) {
my ( $self, $c, $page_name ) = @_;
~snip~
}
コンテキスト経由で値を処理する場合はCaptureArgsとArgsでは格納場所が違い,前者は$c->request->captures->[$level]であり($levelにはそれまでキャプチャされたURLパス文字列が配列格納される),後者は$c->request->argumentsに格納される.
またとても参考になる(より複雑な)例はこちら.
金曜日, 12月 29, 2006
[Linux] htAxess
BASIC認証部分の運用ツールを探していたら,htAxessというのがあった.
SourceForgeにプロジェクトは立っているものの,まさに作りかけでUIもイケていない(総じてオープンソース系は運用ツールを作って公開することにモチベーションが上がらない,ものですね(自慢できないからかな)).
・・・というときに,文句ではなくパッチでも作って貢献すべきであろうと思い立ち,人生初パッチを送ってみた(良くしたいといよりは,パッチ貢献をしてみたかっただけなのだけど).
SourceForgeにプロジェクトは立っているものの,まさに作りかけでUIもイケていない(総じてオープンソース系は運用ツールを作って公開することにモチベーションが上がらない,ものですね(自慢できないからかな)).
htAxessツールとしての認証も.htpasswdで行うため「adminというユーザを作り,その人で(ユーザと同じ)PW変更画面で"Reset"すると管理画面に行ける」という仕様がなんとも.
・・・というときに,文句ではなくパッチでも作って貢献すべきであろうと思い立ち,人生初パッチを送ってみた(良くしたいといよりは,パッチ貢献をしてみたかっただけなのだけど).
月曜日, 12月 25, 2006
[S3] PerlからS3ストレージを利用(ちょっと進歩)
s3コマンドが使えました.
[tf0054@domU-12-31-33-00-XX-XX aws]$ ./s3 -d ls
Listing all buckets
Got all buckets listing
6ca1e26410693a4d27ad25ddca1f4-default
[tf0054@domU-12-31-33-00-XX-XX aws]$ ./s3 -d ls 6ca1e2641XXXXa4d27ad25ddca1f4-default
Listing bucket '6ca1e2641XXXXa4d27ad25ddca1f4-default'
Got bucket listing
0.dir
1.Deploying Lucene on the Grid_-pdf.file
[tf0054@domU-12-31-33-00-03-A8 aws]$
ポイントは環境変数を追加で設定しておくこと.
[tf0054@domU-12-31-33-00-03-A8 aws]$ env | egrep '(S3|AWS)'
S3_CWD=/home/tf0054/aws
AWS_SECRET_ACCESS_KEY=XXXXXZjQHRF4bHlyFfYqHTGZpNpr1isDjApXXXX
AWS_ACCESS_KEY_ID=07ZX98TTVSJG2027XXXX
S3_LIBDIR=/home/tf0054/aws/s3-example-libraries/perl
[tf0054@domU-12-31-33-00-03-A8 aws]$
なかなか奥が深い(というかJungleDiskで作ったバケット名が怪しかっただけ?).
[tf0054@domU-12-31-33-00-XX-XX aws]$ ./s3 -d ls
Listing all buckets
Got all buckets listing
6ca1e26410693a4d27ad25ddca1f4-default
[tf0054@domU-12-31-33-00-XX-XX aws]$ ./s3 -d ls 6ca1e2641XXXXa4d27ad25ddca1f4-default
Listing bucket '6ca1e2641XXXXa4d27ad25ddca1f4-default'
Got bucket listing
0.dir
1.Deploying Lucene on the Grid_-pdf.file
[tf0054@domU-12-31-33-00-03-A8 aws]$
ポイントは環境変数を追加で設定しておくこと.
[tf0054@domU-12-31-33-00-03-A8 aws]$ env | egrep '(S3|AWS)'
S3_CWD=/home/tf0054/aws
AWS_SECRET_ACCESS_KEY=XXXXXZjQHRF4bHlyFfYqHTGZpNpr1isDjApXXXX
AWS_ACCESS_KEY_ID=07ZX98TTVSJG2027XXXX
S3_LIBDIR=/home/tf0054/aws/s3-example-libraries/perl
[tf0054@domU-12-31-33-00-03-A8 aws]$
なかなか奥が深い(というかJungleDiskで作ったバケット名が怪しかっただけ?).
[Perl] 一般ユーザでのCPAN
意外に一般ユーザでのCPAN利用(自分のホームディレクトリ内にPerlモジュール用のディレクトリを切り、使う場合は"use lib"する)は大変ですね...
Perlを使ってもう5年以上たちますが、やっと意味が分りました(恥かしい・・).
~/.cpan/CPAN/MyConfig.pmの書換えはこの一行でよくて、
ポイントはこれと一緒に(bashなら)PERL5LIBを設定すること.
皆これをやってんのかなぁ.すごいなぁ.
Perlを使ってもう5年以上たちますが、やっと意味が分りました(恥かしい・・).
~/.cpan/CPAN/MyConfig.pmの書換えはこの一行でよくて、
'makepl_arg' => q[INSTALLDIRS=site LIB=~/modules LIB=~/modules/lib/perl5 PREFIX=~/modules]
ポイントはこれと一緒に(bashなら)PERL5LIBを設定すること.
export PERL5LIB=~/modules/lib/perl5
皆これをやってんのかなぁ.すごいなぁ.
月曜日, 12月 18, 2006
[S3] PerlからS3ストレージを利用(しかかり中)
awsの開発者フォーラムでPerlからS3を使うスクリプトが公開されていることを,今更ながら見つけました.
s3syncとまさにやりたいことなのですが,でもこの中で使っているs3-perlとは何だろう..debianのパッケージ情報しか引っかからないけれど...Net-Amazon-S3というモジュールをCPANで見つけたけど,これとか使うのかな?
[tf0054@domU-12-31-33-XX-XX-XX Net-Amazon-S3-0.37]$ perl Makefile.PL PREFIX=/home/tf0054/a
ws/perl
Checking if your kit is complete...
Looks good
Warning: prerequisite Class::Accessor::Fast 0 not found.
Warning: prerequisite DateTime::Format::Strptime 0 not found.
Warning: prerequisite Digest::HMAC_SHA1 0 not found.
Warning: prerequisite HTTP::Date 0 not found.
Warning: prerequisite LWP::UserAgent 0 not found.
Warning: prerequisite URI::Escape 0 not found.
Warning: prerequisite XML::LibXML 0 not found.
Warning: prerequisite XML::LibXML::XPathContext 0 not found.
Writing Makefile for Net::Amazon::S3
[tf0054@domU-12-31-33-XX-XX-XX Net-Amazon-S3-0.37]$
しかし関連モジュール多いなぁ.プロトタイピングするならこれくらい使えこなせなくては,というモジュールばかりな気もしますが...
また,その他"s3-perl"というプログラムが指定されていますが,これはAWS開発者フォーラム内で公開されてるものです.
s3syncとまさにやりたいことなのですが,でもこの中で使っているs3-perlとは何だろう..debianのパッケージ情報しか引っかからないけれど...Net-Amazon-S3というモジュールをCPANで見つけたけど,これとか使うのかな?
[tf0054@domU-12-31-33-XX-XX-XX Net-Amazon-S3-0.37]$ perl Makefile.PL PREFIX=/home/tf0054/a
ws/perl
Checking if your kit is complete...
Looks good
Warning: prerequisite Class::Accessor::Fast 0 not found.
Warning: prerequisite DateTime::Format::Strptime 0 not found.
Warning: prerequisite Digest::HMAC_SHA1 0 not found.
Warning: prerequisite HTTP::Date 0 not found.
Warning: prerequisite LWP::UserAgent 0 not found.
Warning: prerequisite URI::Escape 0 not found.
Warning: prerequisite XML::LibXML 0 not found.
Warning: prerequisite XML::LibXML::XPathContext 0 not found.
Writing Makefile for Net::Amazon::S3
[tf0054@domU-12-31-33-XX-XX-XX Net-Amazon-S3-0.37]$
しかし関連モジュール多いなぁ.プロトタイピングするならこれくらい使えこなせなくては,というモジュールばかりな気もしますが...
また,その他"s3-perl"というプログラムが指定されていますが,これはAWS開発者フォーラム内で公開されてるものです.
日曜日, 12月 17, 2006
[PostgreSQL] やばいSQLをlするには
現在実行中のクエリ一覧はこれで見る.
でロックしている状況を見るにはこれで見る.
この結果が以下のような場合,
pid | relname | transaction | mode | granted
-------+---------------------------------+-------------+------------------+---------
5423 | xxxxxx_site_view | 1435608385 | AccessShareLock | t
5423 | | 1435608385 | ExclusiveLock | t
5423 | xxxxxx_kai_seigyo | 1435608385 | AccessShareLock | t
~省略~
OS側から"kill -TERM 5423"(ここで"-9"はダメ(当たり前か)).
select pid,current_query from pg_stat_activity;
でロックしている状況を見るにはこれで見る.
SELECT l.pid, c.relname, l.transaction, l.mode, l.granted FROM pg_locks l LEFT OUTER JOIN pg_class c ON l.relation = c.oid ORDER BY 1;
この結果が以下のような場合,
pid | relname | transaction | mode | granted
-------+---------------------------------+-------------+------------------+---------
5423 | xxxxxx_site_view | 1435608385 | AccessShareLock | t
5423 | | 1435608385 | ExclusiveLock | t
5423 | xxxxxx_kai_seigyo | 1435608385 | AccessShareLock | t
~省略~
OS側から"kill -TERM 5423"(ここで"-9"はダメ(当たり前か)).
土曜日, 12月 16, 2006
[Windows] deskloops
金曜日, 12月 15, 2006
木曜日, 12月 14, 2006
水曜日, 12月 13, 2006
[Linux] pipebentch
シェルのパイプは、便利な反面、意外にボトルネックになっていると聞いた事があります。このパイプの速度(流し込み速度)を測ることができるツールpipebentchを見つけました。
syntoolという一群のプログラムに含まれているもののようです。
syntoolという一群のプログラムに含まれているもののようです。
火曜日, 12月 12, 2006
[PHP] 気にすべきポイント12選
もう既出ですが。
PHPってCache-Tryじゃないですが、エラー制御演算子なんてものがあって"握りつぶし"ができるのですね。。。ある意味きがきいているのかな(普及するわけだ)。
PHPってCache-Tryじゃないですが、エラー制御演算子なんてものがあって"握りつぶし"ができるのですね。。。ある意味きがきいているのかな(普及するわけだ)。
月曜日, 12月 11, 2006
日曜日, 12月 10, 2006
[Linux] lingerd
apacheのTCPセッション管理が甘い部分を、代わりにざくざくと処理してくれるデーモンlingerd。いまいち細かいところが不明であり、まあ2002年が最終更新なので本体に同様の処理が組み込まれたのだろう。
金曜日, 12月 08, 2006
[Linux] osCommerce(2.2ms2-060817)導入
日曜日, 12月 03, 2006
[Linux] coLinux(v0.6.4)+FC5
coLinuxを初めて使う+FC5イメージ(FedoraCore5-2006.8-ext3-2gb.7z)から入ると,かなり各所にトラップ有り...
<1>ネットワークの設定
まずそもそも我が家は192.168.0.0/24なので,おかげでWindowsのICSが使えない.つまりはTAPとかなんとかいくらがんばってだめ.なので"slirp"という方式を利用することに(default.colinux.xmlのネットワーク設定は下記).
<network index="0" type="slirp" redir="tcp:22:22/tcp:23:23/tcp:80:80" />
先に書いちゃうと"slirp"では,Windowsからその中に立ち上がるLinux(ややこしい)にアクセスするすべが(普通にしてると)無くなるので,Windowsの22番ポート(および23番と80番)をcoLinuxで起動させるLinuxへリダイレクトしろ,というのが"redir".
<2>cracklibが壊れとる
普通に起動してrootでpasswdしようとすると失敗する.
これはココを見て解決.
<3>パッケージの追加
このイメージにはそもそもsshdやらそもそもsshやらが,ぜんぜん入っていないので各種インストール.
<4>namedさんが居ない
起動時にnamedというユーザは居ないよ,と起こられ続けるのでこれを追加.
<5>日本対応
キーボードとタイムゾーンを変更
<6>ipv6無効化
/etc/modprobe.confに以下の行を追加.
<7>Windowsからssh出来ない
これにはかなりはまった.というかこのイメージを使っているひとはそもそもsshで接続していないのかな...「Unix98では上記のものを使用せず、代わりに/dev/ptmxと呼ぶ"pty master"を使います」というこのptmxが在りません...作りましょう.
でもまぁメモリも128しか割り当てていないけど,結構快適であとあと面白そうです.
<1>ネットワークの設定
まずそもそも我が家は192.168.0.0/24なので,おかげでWindowsのICSが使えない.つまりはTAPとかなんとかいくらがんばってだめ.なので"slirp"という方式を利用することに(default.colinux.xmlのネットワーク設定は下記).
<network index="0" type="slirp" redir="tcp:22:22/tcp:23:23/tcp:80:80" />
先に書いちゃうと"slirp"では,Windowsからその中に立ち上がるLinux(ややこしい)にアクセスするすべが(普通にしてると)無くなるので,Windowsの22番ポート(および23番と80番)をcoLinuxで起動させるLinuxへリダイレクトしろ,というのが"redir".
<2>cracklibが壊れとる
普通に起動してrootでpasswdしようとすると失敗する.
これはココを見て解決.
<3>パッケージの追加
このイメージにはそもそもsshdやらそもそもsshやらが,ぜんぜん入っていないので各種インストール.
yum install openssh-server openssh-clients
<4>namedさんが居ない
起動時にnamedというユーザは居ないよ,と起こられ続けるのでこれを追加.
named:x:25:25:/tmp:/sbin/nologin
<5>日本対応
キーボードとタイムゾーンを変更
/etc/sysconfig/keyboard : enをjp106に
/etc/localtimeを/usr/share/timezone/Asia/Tokyoのsymlinkに
<6>ipv6無効化
/etc/modprobe.confに以下の行を追加.
alias net-pf-10 off
<7>Windowsからssh出来ない
これにはかなりはまった.というかこのイメージを使っているひとはそもそもsshで接続していないのかな...「Unix98では上記のものを使用せず、代わりに/dev/ptmxと呼ぶ"pty master"を使います」というこのptmxが在りません...作りましょう.
mknod -m 622 /dev/ptmx c 5 2
でもまぁメモリも128しか割り当てていないけど,結構快適であとあと面白そうです.
登録:
投稿 (Atom)

