glass fishv3

32
1 次世代アプリケーションサーバ GlassFish v3 Yoshio Terada GlassFish エバンジェリスト Sun Microsystems K.K. http://blogs.sun.com/yosshi 1

Upload: oracle-fusion-middleware

Post on 19-Jul-2015

280 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Glass Fishv3

1

次世代アプリケーションサーバGlassFish v3

Yoshio TeradaGlassFish エバンジェリストSun Microsystems K.K.http://blogs.sun.com/yosshi

1

Page 2: Glass Fishv3

2

Agenda

• はじめに• GlassFish v3 のご紹介• 参考情報

Page 3: Glass Fishv3

3

はじめに

Page 4: Glass Fishv3

4

Sun SPARCEnterprise M Series

GlassFish: 先進的アプリケーションサーバ

glassfish.dev.java.net

• オープンソースコミュニティ• アプリケーションサーバ• Java EE 5 完全準拠• Web 2.0 対応

> Ajax, Comet

> Web サービス• ハイパフォーマンス

• サポート> コミュニティサポート> 商用サポート

Page 5: Glass Fishv3

5

2005年 6月JavaOne'05

2006年 5月JavaOne'06

GlassFishProject Launch

1.0

2007年 9月

2.01.0u1

3.0

2009年秋頃2009年 01月

2.1 3.1

2010年

GlassFish Enterprise Server の歴史

Page 6: Glass Fishv3

6

パフォーマンス監視ツール

実行時のヒープダンプやスレッドダンプの取得も可

有償ユーザに提供される負荷価値

Page 7: Glass Fishv3

7

パフォーマンスアドバイザー

閾値を設定しアラートを管理者にメールで自動通知可能

有償ユーザに提供される負荷価値

Page 8: Glass Fishv3

8

SNMP 監視対応例1:サーバの状態の監視# snmpwalk -c public -v 1 -m ./J2EE-MIB localhost:10161 J2EE-MIB::j2eeSrvSMStateJ2EE-MIB::j2eeSrvSMState.1.1 = INTEGER: running(4)

例2:デプロイされているアプリケーション数# snmpwalk -c public -v 1 -m ./J2EE-MIB localhost:10161 J2EE-MIB::j2eeAppMoName.1J2EE-MIB::j2eeAppMoName.1.2 = STRING: "name=__JWSappclients,server=server"J2EE-MIB::j2eeAppMoName.1.3 = STRING: "name=MEjbApp,server=server"

例3:アプリケーションが起動した時間# snmpwalk -c public -v 1 -m ./J2EE-MIB localhost:10161 J2EE-MIB::j2eeAppSMStartTime.1J2EE-MIB::j2eeAppSMStartTime.1.2 = STRING: "Fri Feb 13 16:43:11 JST 2009"

有償ユーザに提供される負荷価値

Page 9: Glass Fishv3

9

http://blogs.sun.com/storiesGlassFish の豊富な導入事例

Page 10: Glass Fishv3

10

さまざまな統合開発環境と実行環境をサポート開発環境と実行環境

Page 11: Glass Fishv3

11

GlassFish v3 テーマ

Page 12: Glass Fishv3

12

進化したアプリケーションサーバ

• 次世代アプリケーション• かんたん• より進化した機能

GlassFish v3 のテーマ

Page 13: Glass Fishv3

13

• Java EE 6 のリファレンス実装> 軽量、高速、モジュール化

• Web 2.0 の実現に最適なコンテナ> Java 言語、スクリプト言語 (JRuby 等 ) のサポート> Java EE 6 のプロファイルに対応

• かんたんな操作> 入手、インストール、管理、拡張、設定変更、開発

• Java EE も動作するアプリケーションサーバ> Java EE 対応だけではない > SOA の実現に最適

GlassFish v3 の特徴

Page 14: Glass Fishv3

14

GlassFish v3 Prelude

• Web 2.0 開発 & 配備

• JRuby を完全サポート

• OSGi によるモジュール化> 高速起動 / リソース軽減

• Java EE 6 の事前検証

• 開発者向け機能を提供

GlassFish v3 Prelude( 今すぐ利用可能 )

Page 15: Glass Fishv3

15

• かんたんインストール> GUI インストーラ付属

• 進化したアップデートセンター> 管理画面との統合

• Ruby on Rails のネィティブサポート> war へのアーカイブ必要無

• 無停止でアプリケーションの再配備> asadmin redeploy --properties keepSessions=true

GlassFish v3 の一部機能を先取りでリリースGlassFish v3 Prelude

Page 16: Glass Fishv3

16

• Sun の商用サポートを提供

• 埋め込み GlassFish API の提供

• サポートテクノロジー> Java EE 5 ベース ( 一部 Java EE 6 を利用可能 )> Servlet 2.5> Java Persisntence API 1.0> JAX-WS> JavaServer Faces 1.2> JavaServer Pages 2.1, JSTL 1.2> Streaming API for XML (StAX)

GlassFish v3 の一部機能を先取りでリリースGlassFish v3 Prelude

Page 17: Glass Fishv3

17

• モジュール化 / 拡張性

• 各種フレームワークサポート

• 多言語サポート

• リッチクライアントサポート

• Java EE 6 完全準拠

• SOA/Web サービス

• Microsoft .NET 3.5相互運用

進化したアプリケーションサーバ

GlassFish v3

Page 18: Glass Fishv3

18

WebContainer

GlassFish V3 Core(Module Subsystem)

NamingService

SecurityService

TransactionManagement

Configuration

Deployment

Monitoring/Serviceability/

LoggingInjectionManager

SecurityService Clustering

Java SENetBeans JavaWebStart

JSF ConnectionPooling (JCA)

JavaPersistence

Metro EJB Container

PortletContainer Groovy JRuby OpenMQ

JMS OpenESB OpenSSO

Grizzly Framework

Management Console Management CLIUpdate Center

OSGi

GlassFish v3 は OSGi アプリケーションGlassFish v3 アーキテクチャ

Page 19: Glass Fishv3

19

GlassFish v2.x GlassFish v3.x( 予定 )

Ajax を使用したユーザフレンドリーな管理画面

管理画面の進化

Page 20: Glass Fishv3

20

その他の管理機能のアップデート

• 管理画面のカスタマイズが可能

• 管理画面からバグ登録、フィードバックの受付が可能

• 管理画面の拡張が可能> Spring/Struts 等の設定が可能

• 複数管理者による管理が可能> 同時変更に対する排他制御

• トラブルシューティングガイドやフォーラムへのリンクの提供

管理画面の進化

Page 21: Glass Fishv3

21

• 約 2~ 3秒で起動> 開発環境では起動、終了、 deploy 、 undeploy の速度が重要

• 使われてない機能を初期化しないIIOP, JMS, web service, …

• 開発環境・テスト環境で使いやすいものに

MacBook での実際の起動時間Sun GlassFish Enterprise Server v3 Prelude startup time : Felix(2751ms) startup services(1204ms) total(3955ms)

起動時間の劇的な短縮

Page 22: Glass Fishv3

22

• GlassFish をライブラリとして利用可能> JVM の主人としてではなく> GlassFish をインストールせずにモジュールを起動

• 携帯電話には載りません

• 内部的には異なる環境> OSGi なし、モジュールなし、インストールディレクトリなし

> asadmin なし、 JMX なし、自動 deploy なし(勿論、必要があれば使えます)

例: java -jar MyApplication.jar

埋め込み GlassFish

Page 23: Glass Fishv3

23

• ひとつの jar にまとめられた GlassFish

• 管理ツールに代わるプログラム API を提供> 起動 / 停止 / 設定 / 配備

• Maven プラグインも利用可能> Unit テストも容易

  GlassFish glassfish = new GlassFish();  glassfish.minimallyConfigure(8080);  GFApplication app = glassfish.deploy(new File("path/to/simple.war"));  ...  app.undeploy();  glassfish.stop();

埋め込み GlassFish

Page 24: Glass Fishv3

24

• モジュール化> マイクロモジュールカーネル、 OSGi 対応

• 軽量、高速起動、スケーラブル

• 埋め込み可能 / 拡張可能

• JavaEE 6 対応 / 他フレームワークの利用

• スクリプト言語対応 (JRuby, Jython 等 )

• 開発から本番環境まで

• ソースコードとドキュメントがオープン> 現在 Technology Preview 2 を利用可能

GlassFish v3 のまとめ

Page 25: Glass Fishv3

25

参考情報

Page 26: Glass Fishv3

26

ここで紹介する参考情報は、 2009 年 03 月現在の情報です。GlassFish v3 は現在開発中で今後仕様が変更する可能性があります。また、すべての機能をリストしているわけではありません。すべての実装予定の機能は GlassFish の Wiki に記載されています。http://wiki.glassfish.java.net/Wiki.jsp?page=PlanForGlassFishV3

本内容は GlassFish v3, GlassFish v3.1 の内容を含みます。GlassFish v3 リリース時にリストするすべての機能は利用できません。

参考情報に関する注意事項

Page 27: Glass Fishv3

27

全体的な拡張

• GlassFish v2 との互換性

• 起動時間の短縮

• メモリー消費量の軽減

• unzip によるインストール対応> Tomcat と同様

• 複数のアップデートセンターへの接続

• リソースのプライオリティ付けとスケジューリングが可能

GlassFish v3 で拡張される管理機能

Page 28: Glass Fishv3

28

管理系に対する拡張

• 超大規模環境への対応

• 管理サーバの高可用性対応

• ロールベースのアクセスコントロール

• ネットワーク設定の簡略化

• ファイアウォール環境でかんたん管理> RMI 管理を排除

• 軽量プロビジョニング> 全システムのインストールは不必要

GlassFish v3 で拡張される管理機能

Page 29: Glass Fishv3

29

アプリケーション配備に関する拡張

• Java 以外の言語の配備に対する拡張

• 繰り返しのデプロイに対する改良

• アプリケーションのバージョン化> バージョン化を行うことで、変更したプログラムに不具合があった場合に即時にロールバック可能

• アプリケーションを配備した後のアプリケーション設定の変更> Servlet の init-param, env-entry 等の編集など

GlassFish v3 で拡張される管理機能

Page 30: Glass Fishv3

30

開発関連での拡張

• Java EE 6, JRuby, PHP 等対応

• Dtrace 対応> ボトルネックの原因究明

• JavaFX/JavaScript 対応

• ACC サイズの軽量化> jar の分割ダウンロード

• 複数のアップデートセンターへ接続可能

GlassFish v3 で拡張される管理機能

Page 31: Glass Fishv3

31

GlassFish に関する参考情報• GlassFish コミュニティ・サイト(日本語)

> https://glassfish.dev.java.net/ja

• GlassFish 関連ニュース・ブログ(日本語)> http://blogs.sun.com/theaquarium_ja/

• GlassFish ブログ(英語・日本語)> http://blogs.sun.com/main/tags/glassfish

• ドキュメント> http://docs.sun.com/app/docs/coll/1343.4

• GlassFish Enterprise Server 製品情報> http://jp.sun.com/products/software/appsrvr/

Page 32: Glass Fishv3

3232

次世代アプリケーションサーバGlassFish v3

Yoshio TeradaGlassFish エバンジェリストSun Microsystems K.K.http://blogs.sun.com/yosshi