Your SlideShare is downloading. ×

JBoss AS7

3,743

Published on

A slide used for Okayama OpenLab Vol.19 …

A slide used for Okayama OpenLab Vol.19

http://openlab.okaya.ma/wiki.cgi?page=%CA%D9%B6%AF%B2%F1%2F%C2%E8019%B2%F3

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,743
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
36
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. JBoss AS7 Red HatSenior Software Maintenance Engineer Takayoshi Kimura
  • 2. はじめに• このスライドは JBoss AS 7.0.0.Alpha3 リリースから 2011/06/25 までの AS7 について述べています。 7.0 のファイ ナルリリースなど、このスライド作成 時とは状況が異なっている可能性がご くわずかですがあることをご了承くだ さい。
  • 3. JBoss AS 7• 歴史• 概要• スタンドアロンとドメイン• デモ• JBoss Modules• まとめ
  • 4. History• JBoss AS7 • JBoss AS 4.2 – 2011-07 予定 – 2007-05-11• JBoss AS 6.0 • JBoss AS 4.0 – 2010-12-28 – 2004-09-20• JBoss AS 5.1 • JBoss AS 3.2 – 2009-05-23 – 2003-06-02• JBoss AS 5.0 • JBoss AS 3.0 – 2008-12-05 – 2002-05-29
  • 5. History• 1999 年 JBoss 始動• 2001 年 JBoss Group 設立• 2006 年初め、 Oracle による買収 – 失敗。 Oracle は 2008 年に BEA 買収• 2006 年 4 月 10 日 Red Hat による買収 – 成立
  • 6. JBoss AS7 の概要• Java EE6 アプリケーションサーバ – Web プロファイルサポート – 7.1 で Full プロファイルサポート予定 – ここでの「サポート」というのはテスト 完了、という意味であり、機能がまったく 7.0 に入っていない、というわけではない – Full はあまり需要 / 人気が高くはないので ちょっと後回し
  • 7. JBoss AS7 の概要• 開発アプローチ変更 – 既存の資産である AS6 を一旦考慮から外 して要件やユーザストーリーを洗い出し• そしてメジャーリライト – 「こんなこといいな♪できたらいいな ♪」を全て実現するために – AS6 とは異なる新しいカーネルの開発
  • 8. JBoss AS7 の 3 つの特徴
  • 9. 超高速
  • 10. 超高速 - 起動時間の比較• JBoss AS7 • JBoss EAP 5.1 – 1.5 秒 – 15.0 秒• JBoss AS6 – 起動ではなくラ – 12.0 秒 ンタイムの速度 に最適化• JBoss AS 5.1 • Glassfish 3.1 – 19.0 秒 –3秒• JBoss AS 4.2 – JBoss AS7 出現 – 6.2 秒 までは最速
  • 11. 超高速 - 起動時間の比較• 計測に用いたラップトップのスペック – Dell Latitude E6320 – Intel(R) Core(TM) i7-2620M CPU @ 2.70GHz / 8GB mem / 7200rpm HDD – Fedora 15 (Lovelock) 64-bit – OpenJDK (IcedTea6 1.10.2) (fedora- 58.1.10.2.fc15-x86_64)
  • 12. 超軽量
  • 13. 超軽量• 起動に必要なメモリは 12M – 64bit 上での実績 – 32bit だともう少し低いかも• Tomcat 7.0.14 は 8M で起動する – 機能セットの大きさがかなり違うので妥当• Glassfish 3.1 は 32M では起動しない – OutOfMemoryError
  • 14. かんたん
  • 15. 管理容易性の向上• 豊富で洗練されたマネジメントインタ フェース – シンプルな単一の設定ファイル – API – GUI – CUI
  • 16. 3 つの特徴の裏にあるもの
  • 17. クラウド
  • 18. スタンドアロンとドメイン• スタンドアロン – ふつう• ドメイン – 複数 VM 、複数 JBoss インスタンスを起 動 – まとめて管理 – 今回は省略
  • 19. デモ• 起動• トップページ• 管理 GUI• 管理 CUI• 設定ファイル
  • 20. 人類ニ告グ・・・・・・全テヲテストセヨ!
  • 21. Arquillian• EJB とかコンテナを伴うテストは面倒 、遅い、難しい – というのは神話になりました• テスト容易性の実現• May the container be with you! – remote – managed – embedded
  • 22. JBoss Modules• モジュール? – 一般的な単語 – 外見上は jar• その正体は? – 続きは Web で!
  • 23. モジュールベースクラスローディング環境
  • 24. JBoss Modules• もう少し詳しく? – JBoss Modules はモジュールベースクラス ローディング環境上で、特定のモジュール の Main クラスとして指定されているクラ スの main メソッドの呼び出しを行うもの – シンプル、かんたん• 超高速スレッドセーフなクラスローダ 実装を提供
  • 25. 階層型クラスローダの問題• 複数のクラスローダでクラス共有 – 共通の親クラスローダ上に配置しかない – 「配置」という行為が問題の種となる• 移譲モデル – 階層をどのように利用するか – parent-first と child-first – 混ぜると簡単にデッドロックする – もっと複雑な移譲モデルも
  • 26. モジュールベース クラスローダ• 階層型ではなくグラフ型
  • 27. モジュールベース クラスローダ• マニフェストで import, export といっ た移譲関係を定義 – import: モジュール環境のこのパッケージ を使います – export: 自分はこのパッケージをモジュー ル環境へ提供します• 階層型では移譲関係は「配置」と「ク ラスローダの移譲モデル」という二つ の要素により決定されていた
  • 28. JBoss Modules と OSGi• モジュールベースクラスローディング モデルについては OSGi も同じ• OSGi は「サービス」やより上位のい ろいろな機能を定義するなど、もっと リッチ ( 言い方を変えると複雑 ) な環 境を定義したもの• OSGi はバンドル
  • 29. JBoss Modules と OSGi• JBoss OSGi って? – JBoss Modules 上に OSGi の機能を提供し 、 OSGi バンドルのデプロイを可能に – JBoss AS が OSGi 環境で動いているわけ ではない• Java 7 のモジュール環境は? – JSR-297 Improved Modularity Support – 当然まだリリースされていません – OSGi と同じく JBoss Modules 上で動くよ
  • 30. モジュール時代のお約束• スレッドコンテキストクラスローダか らのクラスロードを最初に試行すると かやっちゃダメ絶対 – Thread.currentThread().getContextClassLo ader()• なぜ? – 大抵単に間違ってる。本当に必要? – モジュールクラスローディングを壊す
  • 31. JBoss MSC• JBoss Modular Service Container• AS7 の新しいカーネル – AS5, 6: JBoss Microcontainer (POJO) – AS3, 4: JBoss Microkernel (JMX)• 軽量であり、サービスの組み立ては Microcontainer より 15 倍くらい速い – Microcontainer は AOP などなんでもでき る機能豊富コンテナだった
  • 32. まとめ• Java EE6• 超高速• 超軽量• 管理容易性• テスト容易性
  • 33. 全ては開発者の幸せとクラウドという時代のために
  • 34. References• AS7 管理ガイド – https://docs.jboss.org/author/display/AS7/Admin+Guide• JBoss World 2011 – http://www.redhat.com/summit/2011/presentations/jbossworld/• JUDCon 2011 – http://www.jboss.org/events/JUDCon/presentations.html

×