下の記事で言っているように、たしかに、大学で習った。
よくわかんなかった・・・
小学生の頃『1+1』で強迫神経症に そんな時、医師のひと言が心を救った
http://grapee.jp/308053/2
よくわかんなかった・・・
小学生の頃『1+1』で強迫神経症に そんな時、医師のひと言が心を救った
http://grapee.jp/308053/2
3月21日
JJUG ナイト・セミナー 「Enterprise Java最新動向~Java EE 8とMicroprofile~」
https://jjug.doorkeeper.jp/events/58535
を聞いてきた!のでメモメモ
■JavaEE8最新状況について
・JavaEE8 What's coming
・JavaEE8 FIXしていないので、かわるかも
・3月時点での最新情報
2017年3月13日GlassFish5のPromotedビルド
2種類のビルド Promootedビルド、Nightlyビルド
・JavaEE8のスケジュール
4月5月 パブリックレビュー
今年7月 ファイならいず
→ことしの9月か10月にGlassFish5
・JavaEE8の仕様
JSON-B、セキュリティ
現状のステータス
MVC1.0はドロップ→コミュニティに移管
・Java EE8 各Specificationとサンプルコード
JAX-RS2.1:REST
2.1で追加された
Reactive Client API
サーバーセントイベント
ノンブロッキングIO
Jax-RS振り返り
1.1 サーバーサイドの実装のみ
クライアントは標準化されていない
Jersey,ApacheCXFが独自に用意しているもの
2.0 クライアントAPI登場
複雑な呼び出しもできる
同期型
非同期呼び出し async()インボーカーを呼び出すだけ
返り値はFuture、コールバックも
→リアクティブ・プログラミング・モデル
JAX-RS2.0
リアクティブ・プログラミング・モデル
→コールバックのネストで実装
コールバック・ヘル
JaxRS-2.1 rxインボーカー
CompletionStageが返り値
ScalaのFutureはチェインを組めるが、JavaのFutureはできない
→そこでCompletionStageが出てきた
・Server Sent Eventの特長
Jerseyではすでに→標準化を行った
SseEvent:
SseEventSourceが受ける
2月時点でのAPI変更:Jersey独自実装がなくなった
・JSON-P1.1
JSON新仕様(RFC 7159)に対応
JSON-P1.0ではJSON RFC 4627
→新仕様では、TOPレベルに何でもおける
RFC 6901
JSONポインタで中を見れる
JSON Patch
RFC 6902:部分的変更、演算、JSONドキュメントの変更
Diff
StreamAPIに対応
JSON collectors
・JSON-B
コンベンションオーバーコンフィグレーション
アノテーション、コンフィグ不要
プロパティ名のカスタマイズ
無視する、フィールドの可視化、NULL
フォーマット指定(ddmmyy)
アダブタ
・プロバイダ
もきしー
べうのプロバイダを指定できる
・サーブレット4.0
HTTP2サポート
HTTP1 テキストベース
HTTP2 1つの物理接続を論理でいくつもに分ける
→優先度
HTTPあっぷぐれーど
・JSF2.3
CDI統合:今までのManaged Bean非推奨
JavaEEコンテナの外部でもCDI動作
・CDI2.0
BeanValidation 2.0 JSR380
・セキュリティAPI
JSR375
いままで標準化なされていなかった
AAuthentication
Identity Store
セキュリティコンテキスト
■MicroProfile 背景と意義、そしてこれから
講師 富士通の人
・自己紹介
・Microprofile.io
ミッション
エンタープライズじゃヴぁ、マイクロサービス、ゴールは標準化
→JavaEEでよいのでは?
・マイクロサービスアーキテクチャ
疎結合、
意思決定の早さ
フィードバックループ(OODAループ)を早く
・MSAレイヤーと要素技術
サービス分割、ステートレス、API アプリケーション
メモリー、REST、非同期 アプリケーションサーバー→マイクロプロファイル
サーバーレス、IaaS,PaaS,Docker VM/コンテナ
・JavaEEにもプロファイル
JavaEEにプロファイルを追加できるのはOracleだけ
・JCPステージ
イニシエーション
どらふと
アーリードラフトレビュー
パブリックレビュー
ファイナルリリース
RI(参照実装)&TCK(テスト実装)
・JavaEEでるの?:今EDR
GlassFishのイシュー V4以降はない:活発でない?
JavaEEに乗れない
→JCPのプロセスがアジャイル的ではない
・仕様が先?実装が先?
仕様が先:適切な競争 JCP
実装が先:イノベーション向き Linuxカーネル
→もともとはOpenJDKで
・JCP VS OpenJDK
OpenJDK
JavaSEのRI JSRによる開発 JCP
JDKのオープンソース JEPによる開発 OpenJDK
・OpenJDKとMicroProfile
似ているところ
Microprofileの仕様がJavaEEの仕様
開始からFIXまでの時間が短い→議論しないから
違い
OpenJDK:競争原理働かない
Microprofile:競争あり。複数ベンダーで実装
・MicroProfileとは
2016年6月設立 レッドハット、IBM,ぱやらなど
2017年1月 富士通参加表明
2Q 1.1リリース予定
・アジャイル的にOODAループをまわす。最終的にはJCP
マイクロプロファイル提供
市場評価→最終的にはJCP
・1.0 2016年9月 JavaOneでリリース
JAX-RS、CDI,JSON-P
1.1 2017年2Q
フォルトトレランス
・configration API
設定の外だし、設定動的反映、複数の設定で構成
アノテーションも使えるように
・JWT RBAC OpenID ConnectベースのRoleBased Access Control
優先度高いといわれたが、進んでいない
・サービス ヘルスチェック
アプリケーションのヘルスチェックをするREST エンドポイント仕様
Kubernetes helth check互換
プロデューサーとコンシューマー
@Healthが書いてあると
・フォルトトレランス
エラーハンドリングを分離する機能
リトライポリシー
フォールバック
サーキットブレーカー:3つの状態 クローズド、オープン、ハーフオープン
バルクヘッド
タイムアウト
・サマリ
オープンイノベーション
フィードバックループによるマイクロサービスを実践
アプリケーションポータビリティ
実装を選択可能
・最終的にはJCP
JJUG ナイト・セミナー 「Enterprise Java最新動向~Java EE 8とMicroprofile~」
https://jjug.doorkeeper.jp/events/58535
を聞いてきた!のでメモメモ
■JavaEE8最新状況について
・JavaEE8 What's coming
・JavaEE8 FIXしていないので、かわるかも
・3月時点での最新情報
2017年3月13日GlassFish5のPromotedビルド
2種類のビルド Promootedビルド、Nightlyビルド
・JavaEE8のスケジュール
4月5月 パブリックレビュー
今年7月 ファイならいず
→ことしの9月か10月にGlassFish5
・JavaEE8の仕様
JSON-B、セキュリティ
現状のステータス
MVC1.0はドロップ→コミュニティに移管
・Java EE8 各Specificationとサンプルコード
JAX-RS2.1:REST
2.1で追加された
Reactive Client API
サーバーセントイベント
ノンブロッキングIO
Jax-RS振り返り
1.1 サーバーサイドの実装のみ
クライアントは標準化されていない
Jersey,ApacheCXFが独自に用意しているもの
2.0 クライアントAPI登場
複雑な呼び出しもできる
同期型
非同期呼び出し async()インボーカーを呼び出すだけ
返り値はFuture、コールバックも
→リアクティブ・プログラミング・モデル
JAX-RS2.0
リアクティブ・プログラミング・モデル
→コールバックのネストで実装
コールバック・ヘル
JaxRS-2.1 rxインボーカー
CompletionStageが返り値
ScalaのFutureはチェインを組めるが、JavaのFutureはできない
→そこでCompletionStageが出てきた
・Server Sent Eventの特長
Jerseyではすでに→標準化を行った
SseEvent:
SseEventSourceが受ける
2月時点でのAPI変更:Jersey独自実装がなくなった
・JSON-P1.1
JSON新仕様(RFC 7159)に対応
JSON-P1.0ではJSON RFC 4627
→新仕様では、TOPレベルに何でもおける
RFC 6901
JSONポインタで中を見れる
JSON Patch
RFC 6902:部分的変更、演算、JSONドキュメントの変更
Diff
StreamAPIに対応
JSON collectors
・JSON-B
コンベンションオーバーコンフィグレーション
アノテーション、コンフィグ不要
プロパティ名のカスタマイズ
無視する、フィールドの可視化、NULL
フォーマット指定(ddmmyy)
アダブタ
・プロバイダ
もきしー
べうのプロバイダを指定できる
・サーブレット4.0
HTTP2サポート
HTTP1 テキストベース
HTTP2 1つの物理接続を論理でいくつもに分ける
→優先度
HTTPあっぷぐれーど
・JSF2.3
CDI統合:今までのManaged Bean非推奨
JavaEEコンテナの外部でもCDI動作
・CDI2.0
BeanValidation 2.0 JSR380
・セキュリティAPI
JSR375
いままで標準化なされていなかった
AAuthentication
Identity Store
セキュリティコンテキスト
■MicroProfile 背景と意義、そしてこれから
講師 富士通の人
・自己紹介
・Microprofile.io
ミッション
エンタープライズじゃヴぁ、マイクロサービス、ゴールは標準化
→JavaEEでよいのでは?
・マイクロサービスアーキテクチャ
疎結合、
意思決定の早さ
フィードバックループ(OODAループ)を早く
・MSAレイヤーと要素技術
サービス分割、ステートレス、API アプリケーション
メモリー、REST、非同期 アプリケーションサーバー→マイクロプロファイル
サーバーレス、IaaS,PaaS,Docker VM/コンテナ
・JavaEEにもプロファイル
JavaEEにプロファイルを追加できるのはOracleだけ
・JCPステージ
イニシエーション
どらふと
アーリードラフトレビュー
パブリックレビュー
ファイナルリリース
RI(参照実装)&TCK(テスト実装)
・JavaEEでるの?:今EDR
GlassFishのイシュー V4以降はない:活発でない?
JavaEEに乗れない
→JCPのプロセスがアジャイル的ではない
・仕様が先?実装が先?
仕様が先:適切な競争 JCP
実装が先:イノベーション向き Linuxカーネル
→もともとはOpenJDKで
・JCP VS OpenJDK
OpenJDK
JavaSEのRI JSRによる開発 JCP
JDKのオープンソース JEPによる開発 OpenJDK
・OpenJDKとMicroProfile
似ているところ
Microprofileの仕様がJavaEEの仕様
開始からFIXまでの時間が短い→議論しないから
違い
OpenJDK:競争原理働かない
Microprofile:競争あり。複数ベンダーで実装
・MicroProfileとは
2016年6月設立 レッドハット、IBM,ぱやらなど
2017年1月 富士通参加表明
2Q 1.1リリース予定
・アジャイル的にOODAループをまわす。最終的にはJCP
マイクロプロファイル提供
市場評価→最終的にはJCP
・1.0 2016年9月 JavaOneでリリース
JAX-RS、CDI,JSON-P
1.1 2017年2Q
フォルトトレランス
・configration API
設定の外だし、設定動的反映、複数の設定で構成
アノテーションも使えるように
・JWT RBAC OpenID ConnectベースのRoleBased Access Control
優先度高いといわれたが、進んでいない
・サービス ヘルスチェック
アプリケーションのヘルスチェックをするREST エンドポイント仕様
Kubernetes helth check互換
プロデューサーとコンシューマー
@Healthが書いてあると
・フォルトトレランス
エラーハンドリングを分離する機能
リトライポリシー
フォールバック
サーキットブレーカー:3つの状態 クローズド、オープン、ハーフオープン
バルクヘッド
タイムアウト
・サマリ
オープンイノベーション
フィードバックループによるマイクロサービスを実践
アプリケーションポータビリティ
実装を選択可能
・最終的にはJCP