アジャイル,Trac,オープンソースなどの話。認定スクラムマスター。Twitterは@ryuzee
あまりにもうちの無線アクセスポイントがタコなのと、サーバラック周りがコンセントだらけなのもあって、思い切ってサーバをシャットダウンして新アクセスポイントへの移行とサーバ群を整理した。
その間にアクセスしてくれた人はWebにアクセスできなかったはず。
短い時間と思ってまぁいいか、なんて思ったり。企業ぢゃないしぃ。
しかしハマったw
簡単だ、楽勝だ、と思っているときに限って嵌るんだよな。
理由は、サーバに使っているマシンの電源を入れなおして起動したら
Kernel Panic
っていう素敵な単語が出現し、サーバの起動が途中で止まったため。このメッセージ、漏れ的にはハード障害とかでしか経験が無いから、一瞬HDD飛んだか?と心臓バクバク。
とりあえずネットで調べて見るか、ってなカンジで調べてみると、どうもSELinuxが悪さしていることが判明。SELinuxよくわからんので、今のサーバではOffにしているのだが、カーネルの起動パラメータではデフォルトがonのため不整合が起こっていた模様。Grubで起動パラメータを編集し、selinux=0と末尾につけて起動したら、無事復活。
いや~。焦った焦った。まだまだ勉強不足。
昨日異動発表があり、T氏が10月から他部署に移ることになった。一方で転入してくる人はおらず、純粋に戦力減である。
なめてんのか(--メ)
後任決めや引継ぎ方法について早速上司とT氏を交えて打ち合わせするが、誰もかれもがシステムを複数個担当しており、正直振る余地がなさ過ぎる。仕方なく4年目のI君と9月に入社したY君に引継ぐことにしたが、回るわけない。結局何かあったら面倒を見るのは俺か、と思うとげんなりもいいとこだ。
俺も早く脱出したい。年俸交渉の際に吹っかけてみて、ダメだったら脱出ケテーイw
IISは環境変数REQUEST_URIを吐かないみたいだ。なので環境変数SERVER_SOFTWAREを見てIISを含んでいたら~する、とかいう下らん真似をしなきゃいかん。ムカっ。30分ハマル。
Catalystで作ったシステムがIIS6上で動かなくて参った。原因はuse Catalyst qw/-Debug/; の箇所。debugを使わないようにしたら直った。
なんかStreamに吐き出す前にログ出力モジュールで良からぬものを吐いているんじゃないのか?レスポンスヘッダ見ていないから分からんが。3時間ハマル。
本番システムで突然ある画面でセッションが切れてログイン画面がでるようになってしまった。Smartyで読み込むテンプレートに空行追加してアクセスしたら正常に動作するようになった。意味わからん。30分ハマル。
もともとのめり込むとそればっかりやる性質な俺である。
今はCatalystばかりいじっている。元はといえば、協力会社の工数見積もりで8MMもあるシステムを受託したとき、結局、誰も協力会社が見つからず、とりあえず面接してみた派遣さんは韓国人で日本語通じず、しかも1ヶ月ちょいで作れ、という無理難題に俺様が応えるためにはフレームワークを使って自分で構築するしかない、というところから来ている。
別にそれだけやってりゃ良いのであれば、まぁなんとか出来るのだが、なんせ昼間は基本的に打ち合わせばかりでコードを書けるのは夜しかない。必然として毎晩タクシー帰りになってしまった。大手町の下で夜な夜な待っている個人タクシーのおぢさんに多大なる貢献をしたので、今度からはVIP扱いだな(嘘
話がそれまくりだ。。。
結局のところ、無事に案件も終了し、Catalystの威力を改めてかみ締めている。個人的には今回の件でPHPよりPerlの方が良くなったかも。PearとCPAN比べるとCPANの方が質量ともに良い気がするから。
ほかにも一杯あるなぁ。今後会社内に広めてやる!!
あ、でも会社内でアーキテクチャ決めるの俺だけだし。。
Catalyst-Plugin-Static-Simple-0.08.tar.gz
sub static_page : Regex('.+.html') {
my ( $self, $c ) = @_;
$c->serve_static;
}
※ちなみに利用する際はuse Catalyst ‘Static’;を記述しておく。
Catalystのrootディレクトリ(scriptやlibと同一階層)にファイルを配置すれば読み込まれる。
必ずControllerを経由してHTMLや画像をディスパッチするようにすると、Controllerへのオーバーヘッドが大きい気がするが、セッション内の場合は少なくとも静的コンテンツ自体もコントローラを経由させ、権限やセッションのチェックを実施したほうが良い。
画像だけならTemplateに直接別のパスへのリンクを書いておいても
良いと思われる。
久々の更新である。なんせタクシー帰宅が多く、書く気力が無いというのが正直なところだ。なのであまり難しいことは考えてもいなくて、ひたすら目の前の仕事を片付けている。鬱陶しい仕事は多少損きりしても良いので外注して片付けるよう部下には指示。
今一人で開発している案件ではCatalystを使っているが、そこでの覚え書き。
sub page_out : Regex('^hoge/(d+)/(d+)') {
my ($self, $c) = @_;
my $test =
$c->req->snippets->[0]."-".$c->req->snippets->[1];
$c->res->output("$testが引数らしいっすね");
}
この例では/hoge/数字/数字というリクエストが来ると、page_outという関数を実行することを示している。マッピングされたPATH以降のPATH_IFNOの値は$c->req->snippets->[0]以降に順に格納される。
タイトルのまんまだが、9/1に中途で採用したY君が出社。
筆者は面接の時に色々話を聞いていて会うのはその時以来。
実際に入社が決まってから、どんな仕事をさせようか色々考えていたが、結局答えも出ず、今日時点でも答えが出ていない。
「自分でやりたいことがあったら言ってね!」と善人上司面して言ったのはそういう訳だったりするのだ。
さらに改めて話を聞くと、サーバ構築で20台並列のWebサーバだの、GentooだのL/Bだのやってたそうなので、何も教えなくても今うちでやっている基盤構築もできそうなカンジ。最初はアプリ部隊にと思ってたが・・・。
まー、とりあえず彼の活躍と俺の仕事が減るのを期待。
#採用は博打。当たりもあれば外れもある。
日記 PHP オープンソース インストールマニアックス IIS Trac MySQL Perl Linux Agile・生産性向上 wordpress フリーソフト 自宅サーバ 書評 ブックマーク phpMyFaq TraM Plugin 早起き Delphi apache CakePHP Firefox Ruby eclipse セキュリティ プラグイン アジャイル mojavi Subversion Ajax/Web2.0 SQLServer Zope サーバ フレームワーク phpBB 仮想化 PostgreSQL OpenVZ scuttle CMS 文字化け 自宅 翻訳・日本語化 ApacheDS LDAP Excel 生産性向上 CodeIgniter XAMPP hacks taskfreak 修正 言語ファイル Ajax SBM ダウンロード HTML::FillInForm mod_security 情報共有