2009-01-01から1年間の記事一覧

2ヶ月待たされてiPhone 3G到着

http://d.hatena.ne.jp/hogem/20090521/1242919952 iPhoneかわいいよiPhone2ヶ月のうちの9割以上は会社の総務がもたもたしてたのが原因。

use English '-no_match_vars'

正規表現つかう時の特殊変数、$`, $&, $'に対応する$PREMATCH, $MATCH, $POSTMATCHを使用しない。 コード中でこれらの変数を一度でも使ってしまうと、以後正規表現を利用する度に、これらの変数に値をセットするためにパフォーマンスが悪くなるから。詳しく…

64bit OS環境のapacheだと仮想メモリの使用量がやたら増えてる

64bit OSだとVSZが100M超えている。実際の消費メモリは10M程度で32bit OSとあまり変わらず。ほぼ同じ環境の32bit OSだと10~20Mぐらいだったような。 $ ps aux | egrep 'VSZ|apache' USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 14737 0.0 …

冷え冷えマットがあれば寝るときの冷房はいらない

似たようなジェル状の商品はあるけど、冷蔵庫で都度冷やしたりしないといけない。その点、これはそんなことしなくて良い。直に寝ると涼しいどころか冷たいので、タオルで覆うべし(・∀・) [rakuten:kids-m:10024282:detail] ワンコ飼ってる人にもおすすめじゃ…

はてなTシャツ2009欲しい!

はてなTシャツ2009欲しい!うごメモはてな / ライム / Mサイズが欲しいお

リバースプロキシ環境下のapacheではmod_extract_forwardedよりもやっぱりmod_rpaf?

2011/12/04 追記 このエントリ内でmod_rpaf v0.6 では変換したIPでアクセス制御 (allow, deny) が可能と書いてますが、間違っている可能性大ですすいません。 昔すぎて環境も設定もログも残ってないので何とも言えないのですが、勘違いしていただけかもしれ…

mysqlでデータベース、テーブルごとのサイズを取得する

(innodbを使用している場合でも)innodb_file_per_table を設定している場合、 du -sh /path/to/data/* などとすればさくっと取れる。 データベースごとのサイズ http://dqn.sakusakutto.jp/2012/04/mysql-database-size-sql.html SELECT table_schema , SUM(…

apacheで携帯キャリアからのIPによるアクセス許可設定を楽に、かつ安全に運用する方法

User-Agentではなく、IPアドレスできちんと制限したい場合のお話。もちろんキャリアが公開しているIPアドレスを書いておけばいいのだけど、変更があった場合に漏れなく対応したいっていう。思いつきで書いてみる。 追記 IPアドレスを所持していて、かつそのP…

postgresqlでデータベース、テーブルごとのサイズを取得する

やり方知らないから、いつも愚直に > select pg_relation_size('table_name'); > select pg_database_size('db_name'); とかしてたんだけどまとめてさくっと概算値を取得したい場合はどうしたらいいか調べた。 データベースのサイズ取得 データベース名とOID…

postgresqlでデータベース、テーブルのOIDを取得

今まで直接SQLで調べてた。 データベースのoid > select datid,datname from pg_stat_database; テーブルのoid > select relid,relname from pg_stat_all_tables; で、最近oid2nameというのが用意されていることにようやく気付いた。 oid2name SRC/contrib/o…

RewriteRuleって30X以外のステータスも返せたのか

メンテ中にRewriteRule使う時にダメ元でR=503を指定してみたら、見事に503が返った。 RewriteEngine On RewriteCond ^/error/ - [L] RewriteRule ^/ /error/503.html [R=503]

nginx - locationの文字列と正規表現の優先順位

http://wiki.nginx.org/NginxHttpCoreModule#location 少しはまった。正規表現の設定のほうが後で評価されて、設定が上書きされるのか。そういえば、apacheもそうだったかな? 例 URL: /fooにaliasを設定しているとする。で、/foo以外の画像(正規表現で指定)…

クジ 引かずにはいられないッ!!

一番くじジョジョの奇妙な冒険第四部 ダイヤモンドは砕けない-一番くじ 神戸にあったのでさっそく引いた。 ハーベスト 1個 ノート 2個 グラス 2個 キラークイーン欲しかったのになー。 追記 キラークイーンを求めて家の近所のサークルKに行ってみたけどなか…

オープンソースカンファレンス2009 Kansai

オープンソースカンファレンス2009 Kansai - おいでやす 去年と同様、今年も京都コンピュータ学院 京都駅前校であるみたいです。参加費用は無料だし、場所も近いので都合があえば今年も行ってみよう。 追記 とりあえずキーワードだけ。 ECパッケージ EC-CUBE…

Net::Telnet - perlでtelnet

今時telnetかよっていう感じだけど、一部のNW機器はtelnetしかなかったりするので。で、やってみたんだけどopen、waitforで失敗した場合は有無をいわさず例外で終了するぽい?ので、エラー処理が必要な場合はeval { } で囲めばいいのかな。 login use Net::T…

nginxでngx_http_upstream_hash_moduleを有効にする

ngx_http_upstream_hash_module upstreamディレクティブでbackendのサーバに振り分ける際に、特定の変数(のハッシュ値)パーシステンスできるモジュール。デフォルトではremote addr(ソースIP)でパーシステンスするip_hashがある。 http://wiki.nginx.org/Ngi…

nginxのversion up時の挙動

構築中のサーバのnginxのバージョンを上げたときに気がついた。lwp-requestをごりごり流しつつ、pkill nginxするのも面倒だなー、サービスしてないしこのままでいいかーと、nginxが起動している状態でmake installした。すると、既存のPREFIX/sbin/nginxはPR…

proxy経由でyumを利用する

man yum.confみてたらyum.confの設定だけでいいのかと思ったけど、実際はwgetも使ってるのでwgetの設定もいるそうだ。 http://take-blizzard.cocolog-nifty.com/blog/2008/07/proxyyumwget_e798.html yum /etc/yum.conf 1行追加 proxy=http://proxy.example.…

コマンドライン型ランチャーをExecutorに変更した

Executor http://executor.dk/ http://www.moongift.jp/2008/08/executor/ 今まではランチャーにbluewindを使っていました。見た目がシンプルで5年ほど愛用してたけど、bluewindは手動でキーワード、アプリケーションを登録しないといけない(というかたいて…

psで確認できないCPU負荷?

普段はほとんど負荷のないwebサーバ上で、sar, vmstatで確認するとCPU利用率が約20%ほどあった。が、ps見てもそんなにCPU使ってるプロセスはない。不気味なので調べたけどよくわからず、いうことで困ったことがあった。で、man psべた。psで表示されるCPU利…

ガンダムで英語を身につける本

神戸のヴィレバンに売っていたので、もちろん衝動買い。ガンダムで英語を身につける本―あの名セリフは英語だとこうなる!作者: ガンダムEnglish研究会出版社/メーカー: 宝島社発売日: 2007/05メディア: 単行本購入: 2人 クリック: 13回この商品を含むブログ (…

find -execとxargs

find -execは、1ファイルに対して1回ずつコマンドを実行。xargsは標準入力から受け取った複数のファイルに対して、コマンドを1回で実行(といってもシェルに渡せる限界があるから、入力が多すぎる場合は複数回にわけて実行)。だから、xargsのほうが早いと思っ…

はてなブックマーク障害中?

http://b.hatena.ne.jp/search?q=%E3%81%AF%E3%81%A6%E3%81%AA http://b.hatena.ne.jp/entry/http://d.hatena.ne.jp/hogem/ 500 Internal Server Errorになるお。ブックマーク追加も出来ないな。結構大規模な障害ぽいぞ。 見れるページもあるな。URL依存? h…

一時ファイルを作成せずに、コマンドの実行結果のdiffを取る (bashのProcess Substitutionで)

http://tldp.org/LDP/abs/html/process-sub.html コマンドの実行結果を名前付きパイプで読めるらしい。 Command list enclosed within parentheses >(command_list) Process substitution uses /dev/fd/ files to send the results of the process(es) withi…

GNU grepの出力をバッファしない (--line-buffered)

忘れたころにたまに戸惑う。ログをgrepしたものをパイプに通してさらにgrepすると、grepがバッファしてしまうのでリアルタイムに出力されなくなる。そんなときは--line-buffered をつけると良い。 --line-buffered 行ごとに出力を掃き出す$ tail -f /var/log…

unicで単語の出現回数を調べる

やっべー uniq -cで出来るの知らなかった。今までperlでめんどくせーワンライナー書いてたわー。uniqに渡す入力はsortしてないとダメなので ./hogehoge | sort | uniq -c回数順に並べる場合はもっかいsort。 ./hogehoge | sort | uniq -c | sort -n -k1

memcachedの初歩的お勉強

実際に今度使いそうなので、ちょっと調べたスーパー自分memo。実際運用する場合は、直接telnetなんかせずに、言語からアクセスすると思うので、ここに書いてるのは実用上の役には立ちません。ref: http://www.danga.com/memcached http://gihyo.jp/dev/featu…

grep --nullでファイル名の後にNULL文字を出す

findとxargs組み合わせるときに find . -type f -print0 | xargs -0 hogeするみたいに、grep -lでファイル名を出力するときにも出来るんかなと思って調べた。--nullつけたらいいらしい。 grep --null -l 'hoge' *.html | xargs -0 hoge

wgetで結果を標準出力に出す

出力先を指定する-Oオプションに-を指定するんだってさ。なんかわかりにくくねー? wget http://www.example.com/ -O - man wget If - is used as file, documents will be printed to standard output, disabling link conversion. はじめこれがわからなか…

WinDump - windowsでtcpdump

http://www.winpcap.org/windump/default.htm WinDump is the Windows version of tcpdump, the command line network analyzer for UNIX. WinDump is fully compatible with tcpdump and can be used to watch, diagnose and save to disk network traffic …