タグ

2009年11月26日のブックマーク (11件)

  • Javaで軽快に使える「軽量フレームワーク」特集 低い学習コストを重視した「Apache Click」 (1)

    はじめに 「軽量フレームワーク」と呼ばれるソフトウェアは、その「軽量」という言葉から、つい動作速度やプログラムサイズなどに目が向いてしまいがちです。しかし、「軽い」は物理的なことだけを示すわけではありません。 「手軽に使えるフレームワーク」を考えるとき、その最大の魅力はファイルサイズや動作速度よりも学習にかかるコストではないでしょうか。とにかく短期間で習得し使えるようになる、それこそが、今のフレームワークに何よりも求められるものかもしれません。 今回取り上げる「Apache Click」は、何より「低い学習コスト」を重視して開発されているフレームワークなのです。 対象読者 Javaで手ごろなフレームワークを探している技術者 最近のフレームワークをごくざっと理解しておきたい方 Web開発の手法がどうも気に入らない、と常々考えているJavaプログラマ Apache Clickとは? 「Apac

    Javaで軽快に使える「軽量フレームワーク」特集 低い学習コストを重視した「Apache Click」 (1)
  • 54行で分散KVSを実装する(レプリケーション機能付き) - Blog by Sadayuki Furuhashi

    Ruby と MessagePack-RPC があれば、簡単なkey-valueストレージは簡単に作れます。54行で書けます(レプリケーションと負荷分散機能付き。サーバー38行、クライアント16行)。 簡単なKVSをベースにして、ログ集計や遠隔デプロイ、遠隔管理機能などの機能を追加していけば、ちょっと便利なサーバープログラムをサクサク自作できるハズ。 この分散KVSは、(keyのハッシュ値 % サーバーの台数)番目のサーバーにkeyを保存します。また、サーバーの名前順でソートしたときの「次のサーバー」と「次の次のサーバー」にデータをレプリケーションします。 すべてのサーバーで同じ設定ファイルを使います。サーバーごとの設定は引数を自分のホスト名に書き換えるだけなので、デプロイが容易です。 MessagePack-RPC for Ruby を使うと、分散しないkey-valueストレージ*1は

    54行で分散KVSを実装する(レプリケーション機能付き) - Blog by Sadayuki Furuhashi
    dann
    dann 2009/11/26
  • App Engine Recipe - Accept Google, AOL, Yahoo, MySpace, Facebook, and OpenID Logins

    Accept Google, AOL, Yahoo, MySpace, Facebook, and OpenID Logins RPX (http://rpxnow.com/) is a free service which authenticates users via OpenID and other protocols for your website. It speaks the individual protocol APIs, and exposes a simple restful interface for you to access both authentication and profile data from Identity Providers like Google, AOL, Yahoo, Facebook, and MySpace. RPX also pro

  • BulkLoaderクラスの使い方 | (SCRATCHBRAIN.BLOG v2)

    『bulk-loader - Google Code』で公開されているBulkLoaderクラスは、複数のファイルのローディングをまとめて行うときにとても便利なクラスです。 たとえば、example.jpgとexample.xmlをロードすると、そのローディング経過と両方のロードが完了したタイミングのイベントが拾えます。 サンプルソース BulkLoaderの使い方 (サンプルソース見るのが一番てっとりばやいかも) 1.import import br.com.stimuli.loading.BulkLoader; import br.com.stimuli.loading.BulkProgressEvent; 2.BulkLoaderのインスタンス生成 private var loader : BulkLoader ;loader = new BulkLoader("main");

  • tokuhirom blog

    Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at

    dann
    dann 2009/11/26
  • Perl tests in Hudson via JUnit - The Player Of Games

    Perl tests in Hudson I'm willing to automate the unit testing of my Perl modules, by plugging them into Hudson. Hudson is a continuous integration server, it "monitors executions of repeated jobs, such as building a software project or jobs run by cron". It works well, is extensible, and looks good. So, The easiest way to do that is have Hudson to execute the module test suite, and look at the out

  • 生 DBI ユーザーのための DBI Cookbook (3) - 日向夏特殊応援部隊

    d:id:ZIGOROu:20090814:1250262134 のさらに続編です。 現在接続している dbh 全てを disconnect したい場合 use strict; use warnings; use DBI; ### なんかいっぱい接続したりとかする my %drhs = DBI->installed_drivers; for my $drh ( values %drhs ) { for my $dbh (@{$drh->{ChildHandles}}) { eval { $dbh->disconnect; }; } } こんな感じ。永続環境で1リクエストをさばく間は DBI->connect_cached() で接続するとして、それらを最後に明示的に disconnect するとかで使えると思う。 SEE ALSO 生 DBI ユーザーのための DBI Cookbook (

    生 DBI ユーザーのための DBI Cookbook (3) - 日向夏特殊応援部隊
    dann
    dann 2009/11/26
  • 馬鹿全 - (AS3)ビット演算を倒す

    ビット演算(ビットえんざん)とは、 ひとつあるいはふたつのビットパターンまたは二進数を個々のビットの列として操作することである。 CPUからすればビット演算は簡単な論理回路で実現できるが、 四則演算、特に乗除算は複雑な論理回路を必要とするため、 多くのコンピュータでは、ビット演算は加減算より若干速く、乗除算よりずっと高速である。 Wikipedia(ビット演算) より AS3 でもビット演算で高速化するなどという Tips をよく見かけたりします。 早いのはわかったけど「なぜそうなるのか。」「実際どんな場面で使ったりするものなのか」などはなかなか書いてなかったり。 なので今回は例を含めつつ、説明していこうと思います。 「得意な人はより得意に、そうでない人はそれなりに」を目指します。 二進法 苦手な人はいきなりブラウザバックしたくなる話だと思いますが少し我慢してください。 二進法

  • GridGain — Extreme Speed and Scale for Data-Intensive Apps

    GridGain is a Unified Real-Time Data Platform by the original creators of Apache Ignite. It enables a simplified and optimized data architecture for enterprises that require extreme speed, massive scale, and high availability from their data ecosystem. Flexible memory-first / disk-second architecture minimizes disk I/O to provide ultra-low latencies across transactional, streaming and analytical p

    GridGain — Extreme Speed and Scale for Data-Intensive Apps
  • 自作サーバカンファレンス「はてなの自作サーバの実際」+他セッション講演メモ - RX-7乗りの適当な日々

    日の自作サーバカンファレンス、申し込みして楽しみにしていたのですが、体調がよろしくなかったので泣く泣く不参加・・・にしようとしていたところ、なんと!Ust(USTREAM)配信されているようだったので、そっちで視聴しました。感謝!! 1つ目のトークの"はてな"の自作サーバ事情の話、他各トークセッションのメモ書きを今後の自分のために残しておきます。 田中さん(id:stanaka)のオープニングセッション 自作サーバは安い早いうまい 必要十分な仕様 部品単位で調達・組立 独自のカスタマイズ(SSD使いたい、など) はてなでは1年くらいSSD使っている! 安い Core2Quad + 8GB + SSD X25-M 80GB \100,000 + 5,000/month (1A) \160,000/year Amazon EC2と比べても、1年でもとが取れて、SSDも付いてくる 自作サーバの

    自作サーバカンファレンス「はてなの自作サーバの実際」+他セッション講演メモ - RX-7乗りの適当な日々
  • Adobe Alchemy tutorial - Codin’ In The Free World

    alchemyについて C/C++で書かれたコードをActionScript Byte Codeに変換することによって、 AS3とC/C++で連携が可能になる。 注意点 C/C++で書かれてgccでコンパイル済みのネイティブコードとリンクするわけではなく、C/C++コードをllvmを仲介してAction Script Bytecodeにするだけ。 なのでネイティブコード程、実行速度は速くはない でもPure AS3よりは速い。最適化とかの影響。 Flash Playerのサンドボックスで動くので、threadやIOに制限がある。 なので、そのへんに転がってるC/C++のコードがなんでも動くわけではない。 参考 公式 http://labs.adobe.com/technologies/alchemy/ 公式C API http://labs.adobe.com/wiki/index.php