hideden.hatenablog.com

はてなぶろぐー。URLなげー。

てすと

あいうえおー

isuconお遊びチーム(事前社内β組)の設定あれこれ

ISUCONに行ってきました。社内での事前βテストに参加して問題を知っていたので出場はせず。社内β参加を持ちかけられたときは、正直「めんどくせーなw」が素直な感想だったんですが、実際にやってみるとスコアがリアルタイムにわかる&ちょっとずつ自分のス…

tiarraをやめてzncにしてみた

Limechatのサーバー設定をいじってる時に、ふとSSL Optionが気になった。tiarra+stoneでやってみるかーと思ってyum search stoneしたところ、見つからない。ソースから入れるかなと思い、openssl-develを入れようとyum search sslしたところ、最下行に znc.x…

linuxを入れたmac mini server(mid 2010, unibody)で停電後に自動復帰する方法

自宅のあるエリアも今日計画停電で停電に。停電自体は仕方ないにしても、電気が戻ったらサーバーは復帰して欲しい。 OSXなら環境設定ですぐなんだが、あいにくうちのmac miniは完全にlinuxのみなのでこれだけのためにOSX入れなおすのもだるいので調べてみた…

iTerm2でcmdをAltにするpatch

cmdをAltにするpatchはいくつかあるんだけど*1 *2、自分の好みに合ったのがなかったので書いた。今日の時点での最新版のiTerm2 rev.491で確認。https://gist.github.com/781481cmd+ space(入力切替), enter(全画面表示), t(新規タブ), n(新規window), c(copy…

Sakura VPS980のCentOSを再起動一回でGentooに変身させる方法

sakuraのVPS980がとっても快適ですばらしい。調子に乗って自宅サーバーを廃止しNASに置き換え、DNS/mailなんかはすべてVPSにした。部屋も静かで涼しくなって、しかもasahi-netの固定IPもろもろを解約したので月コストもだいぶ下がりいい事だらけ。ただ、標準…

JSONPなAPIの負荷対策にngx_http_jsonp_callbackってのを書いてみた

認証が不要で、結果をJSONPで返してくれるAPI。大体は高速化の為にmemcachedを使用し、cacheが存在すればcacheから、存在しなければDB等から引いてcacheに入れ、その後結果を返す設計になってるはず。 URL: http://api.example.com/count?user_id=12345&entr…

nginx+squidで画像キャッシュサーバーの作り方

仕事で画像キャッシュサーバーを構築した時のメモ。大規模事例の設定例が検索してもあまり見つからなかったので同じような境遇の誰かの参考になれば。 ピーク時のトラフィックは数Gbps 画像総容量は数十TB バックエンドのstorageが複数種類 規模とアクセス量…

SoftBank Mobileの携帯用GatewayをPCで通る方法のメモ

2009-08-02 15:10:00 iPhone使わない方法を追記iPhoneを色々いじってる過程でやってみたら出来たのでメモ。さほど悪い事は出来ないと思うけど、色々自己責任で。iPhoneとSBMガラケーでは全く別のネットワークを使用しているため、通常iPhoneからは公式サイト…

squid 3.1をreverse proxyとして使ってる場合にoriginサーバー側のbasic認証を使う方法

[squid]---[apache:1]---[apache:2]という構成の[apache:2]で特定のHTTP methodの場合だけかけてあるBASIC認証がsquidを経由すると全然通れなくなって、[apache:1]でmod_rewriteの[P]使ってるからダメなのかと疑ってみたり、tcpdumpで調べて「なんでsquidの…

emacs + trampで多段SSHで接続したサーバー上のファイルを直接編集する時のメモ

会社のサービスはローカルに開発環境を構築するにはでかすぎてだるいので開発サーバー上で開発してるのだが、この開発サーバーが非力すぎて誰かがsvn操作とかでdisk IO使い出すとemacsまで巻き込んで固まる。。。で、周りの人に聞いてみたらemacs+trampでや…

jTemplatesのforeachの中から元の$Tを参照する方法

jQuery+jTemplatesでごにょごにょやってて、ちょっと悩んだのでメモ。 データ var data = { status: 'success', base_url: 'http://localhost/entry/edit/', entries: [ { id: "1", title: "title1" }, { id: "2", title: "title2" } ] }; テンプレート {#if…

iPhone3GをJailBreakするときの注意点

iPhoneはデータ取得方法にプッシュを指定しておくと、wifiエリア内でwifi接続していても3G圏内であれば常時3G経由のglobalIPを保持している。この状態だと、画面ロック状態でも3G経由のglobalIPできちんとping等に応答する。*1で、事実上プロバイダが1社で12…

repcachedのメモ。

ある程度でかいサービスでDailyCount的な事をやらなきゃいけなくなって、DBに突っ込むとログのお掃除や負荷が大変だからmemcachedでやりたいけど、落ちたらウザいしなー・・・って考えてたらrepcachedを思い出した。YAPC2008でもmixiのkazeburoさんが紹介し…

mod_perlで親プロセスとのCopy on Writeな共有メモリを増やす方法。

大量にアクセスがあってMaxClientを大きく設定したい場合、Apacheの1プロセスあたりのメモリを少なくするのが重要。当然アプリ側で大きなライブラリを読み込まずに画像の変換はGearmandにタスクとして投げたりとかの工夫するのも有効だが、fork元になるApach…

x演算子のメモリの使い方。

10MBのダミーデータをメモリ上に確保しようと思ったらよくわからないことが。 [hideden@hideden-x61]$ perl -e '$a = "." x (10*1024*1024); sleep 60;' & [1] 7433 [hideden@hideden-x61]$ perl -e '$a = "."; $a x= 10*1024*1024; sleep 60;' & [2] 7434 […

レキシカルスコープやらシンボルテーブルやら型グロブやら。

メモっとく。 use strict; our $hoge = 'HOGE'; my $hoge = 'hoge'; print $hoge; # hoge print ${hoge}; # hoge print $::hoge; # HOGE print $main::hoge; # HOGE print $::main::hoge; # HOGE print ${*hoge{SCALAR}}; # HOGE 型グロブからスカラー変数の…

ckw + NYACUS2.22aでサイズ変更時に自動でwidth設定

いまいち微妙だけどnyacusのpatch作った。 Win32プログラムと違ってサイズ変更時に WM_SIZING とか飛んできたりしないため、結局プロンプト表示する際にGetConsoleScreenBufferInfoでサイズを取得してリサイズする事にした。リサイズ後、一度何も入力せずにE…

ckw改造版の修正版とuberboxの修正版と簡易電卓っぽいの。

08.12.03追記 最近の性能のいいPCだとckwのConsoleを隠す処理が失敗してConsoleが出たままになったりするようです。 修正したバージョンを公開された方がいらっしゃるようなのでそちらもご参照ください。 d:id:s-yata:20080823:1219474577 http://blogs.wank…

cmd.exeを超便利にする ckw 0.8.10 を改造した。

08.12.03追記 最近の性能のいいPCだとckwのConsoleを隠す処理が失敗してConsoleが出たままになったりするようです。 修正したバージョンを公開された方がいらっしゃるようなのでそちらもご参照ください。 d:id:s-yata:20080823:1219474577 http://blogs.wank…

参照カウンタ。

オブジェクトのリファレンスがつまった配列@arrayを$#arrayで短くしたとき、ちゃんと中身が開放されるのかなーって思って参照カウンタをみてみた。 #!/usr/bin/perl use Devel::Peek qw/SvREFCNT/; my (@a, @b); push(@a, \$_) for (1 .. 10); @b = @a; $#a …

2.6.22-gentoo-r8でALSA更新。

*gentoo-sources-2.6.22-r8 (26 Sep 2007) 26 Sep 2007; Daniel Drake <dsd@gentoo.org> +gentoo-sources-2.6.22-r8.ebuild: Update to Linux 2.6.22.9, includes ALSA security fix. Add sound support (HDA) on ThinkPad T61. usb-storage capacity fix for Nikon D200 cam</dsd@gentoo.org>…

distccを入れたliveCD/USB作成してお手軽に分散コンパイル!

コンパイル遅いからなんとか速くしたい。distccで分散コンパイルすれば速くなるはず。だけど、それだけの為にまわりのPCにLinuxを入れるのも・・・。ってことで、distccを入れたliveCDを作ってみた。コンパイルだけしてくれればいいので、なるべくコンパクト…

perl-win32で再起動前に終了処理をする方法

結構つまったのでメモ。Win32では通常、ユーザーが再起動またはログアウト処理を開始すると全てのWindowに対してWM_QUERYENDSESSIONというメッセージが送られてくる。これを受信した際に各種終了処理(データを保存したり接続を切ったり)を行い、その結果終…

SoftBank絵文字のコード表

なんか3GCのSH系が絵文字をSJIS外字領域で送ってくる。どこにそんな定義が?って思って調べたらPDF資料のHTML編のAppendixにあった。(p211〜)コピペできない資料で抽出が面倒だったので、抽出したものを以下に。PDFって嫌いだ。http://hideden.net/pub/sbm_e…

xf86-video-intel

http://gitweb.freedesktop.org/?p=xorg/driver/xf86-video-intel.git;a=commit;h=f403a50afbcef1e54f554481c72037338bd5357cついに謎のTV-Outが出現する現象の修正がきたっぽい。とりあえず様子見。

ies4linux

入れてみた。チュートリアルまんま。 # emerge wine cabextract $ wget http://www.tatanka.com.br/ies4linux/downloads/ies4linux-latest.tar.gz $ tar zxf ies4linux-lastest.tar.gz $ cd ies4linux-2.0.5 $ ./ies4linuxで、さくっと入る。便利な世の中だ…

965GM続き

sys-kernel/gentoo-sources-2.6.22-r1 x11-drivers/xf86-video-i810-2.1.0を入れるだけでいけた。楽になった。xorg.confに Section "Device" Option "Monitor-TV" "TV-Out-disable" EndSection Section "Monitor" Identifier "TV-Out-disable" Option "Disab…

X61でWiFi

案外簡単に入った。Kernelはgentoo-sources-2.6.22-r1 Networking -> Wireless <M> Generic IEEE 802.11 Networking Stack (mac80211) で、iwlwifiを入れる。 /etc/portage/package.keywords net-wireless/iwlwifi ~x86 net-wireless/iwl4965-ucode ~x86 /etc/p</m>…

ALSAとか。

あんまり音無くても困らないんだけど、YouTubeで音でないのもちょっと寂しいので設定。あたらしめのドライバを入れるためにKernelじゃなくalsa-driverのほうで入れる。 まずはKernel設定。ALSA関係を入れないようにする。 Device Drivers ---> Sound ---> <*…