JavaOne出張2008 5日目 JavaOne最終日
今日は
- Hudson、Road test results of the Big Three Web Application Frameworks、Jython
■Hudson
PCは安くなり、人は高くなる。王様のように。
Find more ways to put computers work for you.
Continuous integration!
HudsonはCIサーバ
コミュニケーションオーバヘッドを減らす
ビルド、テスト
reduce people dependency
Hudsonはあなたのチームの一員
基本機能
Checkout
CVS、SVN。。。。。
Do builds
Ant、Maven
Record results
Close the feedback loop
RSS
Email、IM
Tray application
Tool integration
findbugs、emma
テストのfailをトラックバックできる
maven2と連携できる
ベストプラクティス
DependencyTracking
build←→Test
Baseline
Compartmentalization?
でかいビルドとするのではなく、小さくビルドする
Faster feedback
Good engineering practice anyway
Isolation of problems
Test/Build separation
Tests often dominate build time
Multiple tests are run in parallel
improves turn-around time
Tricks
wgetなどで成果物を取得
そのほかの問題
Does this build work?
QA takes time
CI should be fast
Nightlies
Why just once a day?
Disconnected from CI builds
Once promoted,
Commence more expensive QA
Deploy on staging server
Integrate
Push to maven repository
Distributed builds
Master
HTTPリクエストを受け付ける
重要な情報を保管
Slave
83kのjarだけですむ
ビルドする
SlaveはJavaWebstart経由でアクセプトされる
チェックボックスをいれるだけで、分散ビルドが可能
拡張性
RESTful API
Eclipseプラグイン
Integrate with Issue Trackers
プラグイン開発
mavenプラグイン
2008 Duke's choice award!
- Road test results of the Big Three Web Application Frameworks
Struts/JSF/SpringMVCのパフォーマンス比較。
しかし実際は3つではなく、Struts1.x、Struts2.x、JSF Sun RI、MyFaces、
SpringMVC 2.xの5つの比較。
プレゼンターの人は事あるたびにこれはあくまで私の検証結果だから
このとおりにならないこともあるよと言っていたw というか訴えないでとか言ってるしw
若干その前置きが長すぎていらいらした。
ひとまずわかったことは、
・JSF Sun RIがやや健闘
・だけどJSFはメモリ使用量/CPU使用量がバカにならない
・MyFacesは話にならない
・Struts2は安定したレスポンスを返すが全体的にパフォーマンスはまだまだといったところ
・Maximum throughputをみるとStruts1.xとSpringMVCは良好
・プレゼンターの個人的な使いやすさでいえば、JSF、Struts2、SpringMVC、Struts1の順番らしい
て感じかな。
アクションベースとかコンポーネントベースとかそういう分類でも
検証してほしかったなあ。