DBIx::Skinny - JPerl Advent Calendar 2009 Perl に関するちょっとした Tips をのっけてみるよ。ちゃんと続くかな?
Skinny使い始めて、FV::SimpleでDBIC::Uniqueなバリデーションは自分でPlugin書かないとダメかと思ったけど、自分の使い方だとそのままいけたのでメモっとく。 FV::Simple::Plugin::DBIC::Uniqueは指定のクラスがDBIC互換のcountメソッドを持っていれば問題なく動くので、SkinnyをラップしたModelのクラスにcount()を実装してやればOK。 package MyApp::User; use FormValidator::Simple qw/DBIC::Unique/; sub validate { my ($self, $args) = @_; my $result = FormValidator::Simple->check($args => [ id => [ qw/UINT/ ], name => [ qw/NOT_B
俺は普段こういう運用でやっているが、君はどうか。 社内の trac にドキュメントをかいたので、コピペしておく。git についてはカジュアルにつかってるだけなので、もっとこうしたほうがいいんじゃねえのというのがあればおしえてください。 ブランチ命名規則master 本番の deploy 用。誰かに deploy されてこまるものはいれない。stg ステージングの deploy 用iss(\d+) チケット$1 用の topic branch。master から分岐させるその他、キャンペーン関係など、おいやすくしたい者は別途名前つけてもよし。 stg の運用基本的に、開発はチケットにひもづく topic branch でおこなうので、以下のような作業フローとなる git co master git co -b issXXX # トピックブランチをきる ... # development gi
Best Practices for Speeding Up Your Web Site The Exceptional Performance team has identified a number of best practices for making web pages fast. The list includes 35 best practices divided into 7 categories. Minimize HTTP Requests tag: content 80% of the end-user response time is spent on the front-end. Most of this time is tied up in downloading all the components in the page: images, styleshee
続きというか、お詫びを書きました。 文章を多少修正しました。技術的な点は色々誤りがあると思いますので、あまり信用しないでください。詳しくはgeekpageさんがじきに書いてくださるはずです。 入口にあった、Akamaiサーバーがリアルタイムに捌いているトラフィックを可視化した地球儀が映ったモニター。アメリカが早朝なのでトラフィックは850Gbpsと少な目(笑) それでもアメリカのバーの長さは凄い やすゆきさんという方が、Blogでひっそりと告知していたのが、IT勉強会カレンダーに載っていて、それを目ざとく見つけて行ってきた次第。募集枠5人とかだったので、焦って申し込んだら、実際そんなに募集は来なかったみたいで意外。僕なんか「Akamai」って書いてあっただけで飛びついたのに。内輪に近いノリだったてのもあると思うけど、案外「Akamai」には訴求力が無いのかね。まあ、インターネットの裏の支配
先日 1TB クラスのハードディスクを買いに秋葉原へいってきました。ずいぶん安くなったものだなぁと感激しながら物色してたんですが、なぜかキャッシュ 64MB のほうが 32MB のものより安かったのでこりゃお得だろうと思いそちらを考えなしに買いました。 帰ってきて調べてみたら、買ったやつは 4096 バイトセクタのものでした。なんか Windows XP だとそのまま使うとパフォーマンスがでないとか聞いていた気はしていたんですが、まさかそれを買ってしまうとは。どうりでバッファ容量が大きいほう(つまり 4K セクタ)がどの店でも安いわけだ。 たしか Linux の場合だと大丈夫だよねと思いながら検索してみると、Linux でもパフォーマンスが落ちるという話が。うわーどうしようと思い、4096 バイトセクタ HDD と Linux についていろいろ調べてみました。 ただ、机上の調査であり実地検
perlでかかれたwebサーバ Starman の爆速ぶりは目をみはる物がありますが自分の運用環境では lightyのproxyを介しての接続であるためkeepaliveが使えない等Starmanの機能を生かしきる事はできない。 じゃlighty以外のapacheやnginxとかReverseProxy専門のvarnishだとどうなんだろと疑問が湧きtestしてみることにする。 接続構成 abベンチ側 FreeBSD 7.2-STABLE FreeBSD 7.2-STABLE Pentium E2180 2GHz MEM 2.0G アプリサーバ側 FreeBSD 8.0-RELEASE-p2 FreeBSD 8.0-RELEASE-p2 Celeron 1.7GHz MEM 1.5G アプリサーバ側に apache-2.2.14(worker) lighttpd-1.4.26 nginx-
HTTP の持続的接続の功罪について はじめに、HTTP の持続的接続 (keep-alive) のメリットについて。持続的接続を使うメリットは、以下の2点。 TCP 接続の確立にかかる時間の節約*1 TCP の接続と切断に必要な資源 (CPUとネットワーク) の節約 ウェブブラウザ〜データセンタ間の通信で、持続的接続を使う理由は、このうちの前者。特に太平洋を超えるようなケースだと、TCP 接続に0.2秒とかかかるので、メリットが大きい。 一方、持続的接続のデメリットは、 接続が切断されるまでの間、その接続を維持するためにコストがかかる (主としてメモリが無駄になる) という点になる。特に、1プロセス1コネクションを前提とするアーキテクチャ (例: mod_perl) だと、メモリの無駄使いが、とてもひどいことになる。 そこで、ブラウザからの接続を受ける HTTP サーバとアプリケーション
Plack::Server::Standalone 系を使ってウェブアプリケーション開発と運用が楽になる話 - JPerl Advent Calendar 2009 Perl に関するちょっとした Tips をのっけてみるよ。ちゃんと続くかな? 既存の環境に対する不満 Perl のウェブアプリケーションを構築するにあたっては、リバースプロキシと mod_perl を組み合わせるか、あるいは FastCGI (ExternalServer) を利用するのが一般的だと思います。しかし、どちらをとっても、環境を構築して設定するのが難しいというのが個人的な不満でした (mod_redirect を設定したり mod_fastcgi にパッチをあててインストールしたり startup.pl を書いたり...)。自分が Plack の開発 (主に Server::Standalone と Server
Linuxにもメディアプレーヤーは標準で付いてきますけど,使い勝手がよいとはいいがたいですよねぇ. Macユーザである私から見るのでバイアスはかかっているとは思いますが,iTunesは再生ソフトとしてもかなり使い勝手がよいと思います. しかも,iTMSから音楽も購入できますし... 先日のアンケートの結果でもLinuxユーザはiTunesを使用したがっているみたいなので,その方法をご紹介. 元ネタはこちらなのですが,Wineを使用することが前提になっているので,まずはWineを入れましょう. バージョンは最新のものが0.9.7ですけど,以下の説明は0.9.6でテストされたものみたいです. 1. インストールの前にwinecfgで仮想デスクトップを1024x768に設定しないといけません. 2. “wine itunessetup.exe”と入力. 3. インストーラがメッセージを表示するの
かなりの暇人であるはずの私でさえ忙しい師走の恐怖 (挨拶) ども.五月雨へちまです. 今回からしばらくwineについて書いていきたいと思います. VirtualBoxでWindowsを仮想化してあるとはいえ,やはり Windowsソフトをそのまま使えた方が便利なのは事実. そこで,私もwineに挑戦してみることにしました. 昔かるく触ったことがあるのですが,その時は,Photoshopを使っただけでした. マニュアルもろくすっぽ読まなかったので,スキャナが使えないことにイライラして, 結局Gimpを使うようになりましたが,最近ComicStudioを買ったので, それをLinuxで使おうと思いまして. (現在はVirtualBoxで使ってます) ある意味,wineへの挑戦は,Windowsからlinuxへ移ってきた人なら,誰もが通る道なのかもしれません. wine使用の目標は,ComicS
にしても、こちらのサイトでも言われていますが、なぜ半角カナ専用のUnicodeブロックがないのかと小一時間(ry http://blog.livedoor.jp/sasata299/archives/51194035.html http://d.hatena.ne.jp/pasela/20081003/ll_unicode ということで、 sub InHankakuKatakana { "FF65\tFF9F" }という一行をはっつけると、つかえるようになりますね。 #!/usr/bin/perl use strict; use warnings; use utf8; use Test::More; sub InHankakuKatakana { "FF65\tFF9F" } ok("\x{FF65}" =~ qr/\p{InHankakuKatakana}/); ok("abc" !~
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く