Submit Search
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
19 likes
9,365 views
Takakiyo Tanaka
JJUG CCC 2016 Spring F-5セッションの発表資料です。 #jjug #jjug_ccc #ccc_f5
Software
Read more
1 of 45
Download now
Downloaded 68 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
More Related Content
PDF
実践に向けたドメイン駆動設計のエッセンス
増田 亨
PDF
正しいものを正しく作る塾-設計コース
増田 亨
PDF
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
PDF
ドメイン駆動設計の正しい歩き方
増田 亨
PDF
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
PDF
ドメイン駆動設計 基本を理解する
増田 亨
PDF
Azure ADとIdentity管理
Naohiro Fujie
PDF
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
Koichiro Matsuoka
実践に向けたドメイン駆動設計のエッセンス
増田 亨
正しいものを正しく作る塾-設計コース
増田 亨
「ドメイン駆動設計」の複雑さに立ち向かう
増田 亨
ドメイン駆動設計の正しい歩き方
増田 亨
3週連続DDDその1 ドメイン駆動設計の基本を理解する
増田 亨
ドメイン駆動設計 基本を理解する
増田 亨
Azure ADとIdentity管理
Naohiro Fujie
DDDのモデリングとは何なのか、 そしてどうコードに落とすのか
Koichiro Matsuoka
What's hot
(20)
PPT
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
PPTX
世界一わかりやすいClean Architecture
Atsushi Nakamura
PDF
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
PDF
アジャイルなソフトウェア設計を目指して
増田 亨
PDF
Dockerからcontainerdへの移行
Kohei Tokunaga
PDF
人生がときめくAPIテスト自動化 with Karate
Takanori Suzuki
PDF
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
PDF
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
NTT DATA Technology & Innovation
PDF
ドメイン駆動設計 分析しながら設計する
増田 亨
PDF
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
PPTX
RLSを用いたマルチテナント実装 for Django
Takayuki Shimizukawa
PDF
AmebaのMongoDB活用事例
Akihiro Kuwano
PDF
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
PDF
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
A AOKI
PPTX
SQLチューニング入門 入門編
Miki Shimogai
PDF
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
PDF
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
PPTX
マイクロサービスにおける 結果整合性との戦い
ota42y
PDF
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
Koichiro Matsuoka
PPTX
Spring CloudとZipkinを利用した分散トレーシング
Rakuten Group, Inc.
ドメインロジックの実装方法とドメイン駆動設計
Tadayoshi Sato
世界一わかりやすいClean Architecture
Atsushi Nakamura
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
アジャイルなソフトウェア設計を目指して
増田 亨
Dockerからcontainerdへの移行
Kohei Tokunaga
人生がときめくAPIテスト自動化 with Karate
Takanori Suzuki
ドメイン駆動設計 コアドメインを語り合ってみよう
増田 亨
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
NTT DATA Technology & Innovation
ドメイン駆動設計 分析しながら設計する
増田 亨
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
RLSを用いたマルチテナント実装 for Django
Takayuki Shimizukawa
AmebaのMongoDB活用事例
Akihiro Kuwano
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
A AOKI
SQLチューニング入門 入門編
Miki Shimogai
イミュータブルデータモデル(世代編)
Yoshitaka Kawashima
オブジェクト指向プログラミングのためのモデリング入門
増田 亨
マイクロサービスにおける 結果整合性との戦い
ota42y
DDDオンライン勉強会#2 「集約・境界付けられたコンテキスト」
Koichiro Matsuoka
Spring CloudとZipkinを利用した分散トレーシング
Rakuten Group, Inc.
Ad
Viewers also liked
(20)
PDF
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
LINE Corporation
PPTX
Spring starterによるSpring Boot Starter
Ryosuke Uchitate
PDF
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
PPTX
マルチクラウドデータ連携Javaアプリケーションの作り方
CData Software Japan
PDF
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Java女子部
PDF
Business Process Modeling in Goldman Sachs @ JJUG CCC Fall 2017
tty fky
PDF
タイムマシン採用:明日のエンタープライズJavaの世界を予想する -Java EE7/クラウド/Docker/etc.-
Takakiyo Tanaka
PDF
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
PPTX
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
Yuki Morishita
PPTX
将来 自分で サービスを持ちたいエンジニアの葛藤
Yoshio Kajikuri
PPTX
高速なソートアルゴリズムを書こう!!
masakazu matsubara
PPTX
Javaアプリケーションの モダナイゼーションアプローチ
CData Software Japan
PDF
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
PDF
ユニットテストのアサーション 流れるようなインターフェースのAssertJを添えて 入門者仕立て
Ryosuke Uchitate
PDF
JVM上で動くPython処理系実装のススメ
Yoshiaki Shibutani
PDF
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
Yusuke Suzuki
PDF
Another compilation method in java - AOT (Ahead of Time) compilation
Logico
PDF
Java9を迎えた今こそ!Java本格(再)入門
Takuya Okada
PPTX
サーバサイド Kotlin
Hiroki Ohtani
PPTX
Dockerで始める Java EE アプリケーション開発 for JJUG CCC 2017
Kohei Saito
HBaseとRedisを使った100億超/日メッセージを処理するLINEのストレージ
LINE Corporation
Spring starterによるSpring Boot Starter
Ryosuke Uchitate
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
マルチクラウドデータ連携Javaアプリケーションの作り方
CData Software Japan
Spring Bootでチャットツールを作りながらWebの仕組みを理解しよう!
Java女子部
Business Process Modeling in Goldman Sachs @ JJUG CCC Fall 2017
tty fky
タイムマシン採用:明日のエンタープライズJavaの世界を予想する -Java EE7/クラウド/Docker/etc.-
Takakiyo Tanaka
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
サンプルアプリケーションで学ぶApache Cassandraを使ったJavaアプリケーションの作り方
Yuki Morishita
将来 自分で サービスを持ちたいエンジニアの葛藤
Yoshio Kajikuri
高速なソートアルゴリズムを書こう!!
masakazu matsubara
Javaアプリケーションの モダナイゼーションアプローチ
CData Software Japan
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
ユニットテストのアサーション 流れるようなインターフェースのAssertJを添えて 入門者仕立て
Ryosuke Uchitate
JVM上で動くPython処理系実装のススメ
Yoshiaki Shibutani
マイクロサービス化設計入門 - AWS Dev Day Tokyo 2017
Yusuke Suzuki
Another compilation method in java - AOT (Ahead of Time) compilation
Logico
Java9を迎えた今こそ!Java本格(再)入門
Takuya Okada
サーバサイド Kotlin
Hiroki Ohtani
Dockerで始める Java EE アプリケーション開発 for JJUG CCC 2017
Kohei Saito
Ad
Similar to Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
(20)
PDF
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
Takakiyo Tanaka
PDF
クラウド、クラウドというけれどJavaのシステムにとってクラウドってメリットあるの?
Takakiyo Tanaka
PDF
エンタープライズJava環境におけるマイクロサービス・アーキテクチャーの必要性 #natsumiB4
Takakiyo Tanaka
PDF
WebSphere Application Server V8.5.5Libertyプロファイルのご紹介 #jjug_ccc #ccc_r51
Takakiyo Tanaka
PDF
20161111 java one2016-feedback
Takashi Ito
PDF
IBMが新しいJava EEコンテナを作っているらしい -Libertyプロファイルとは-
Takakiyo Tanaka
PDF
JJUG CCC 2015 Spring: Liberty Profile Technical Deepdive:IBMの新しいアプリケーションサーバーの...
Takakiyo Tanaka
PDF
20161119 java one-feedback_osaka
Takashi Ito
PDF
見せます! 半歩先のクラウド型アプリケーション開発
Tatsuki Manchu
PPTX
ついに始まるJava EE 7時代のアプリケーション開発
Takakiyo Tanaka
PPTX
API Academy:マイクロサービス化へのファーストステップ
CA Technologies
PDF
JJUG CCC 2014 Spring IBM SDK for Java 8の全貌 #jjug_ccc #ccc_r57
Takakiyo Tanaka
PDF
Introduction to web development 1
hideaki honda
PDF
Jakarta EEとMicroprofileの上手な付き合い方と使い方 - JakartaOne Livestream Japan 2020
Hirofumi Iwasaki
PPTX
Jakarta EE + MicroProfile との付き合い方
Hirofumi Iwasaki
PDF
Java EE 6で復活するエンタープライズJavaの世界
Takakiyo Tanaka
PPTX
Beginning Java EE 6 勉強会(1) #bje_study
Toshiaki Maki
PDF
たった1時間でシステム構築!“激速”環境構築を実現する“パターン技術”の秘密とは
Rina Owaki
PDF
Zマイスターとの新たな価値探求 WebSphere
IBMソリューション
PDF
OSSではじめるオープン・スタンダードのクラウド @201304
Shinichiro Arai
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
Takakiyo Tanaka
クラウド、クラウドというけれどJavaのシステムにとってクラウドってメリットあるの?
Takakiyo Tanaka
エンタープライズJava環境におけるマイクロサービス・アーキテクチャーの必要性 #natsumiB4
Takakiyo Tanaka
WebSphere Application Server V8.5.5Libertyプロファイルのご紹介 #jjug_ccc #ccc_r51
Takakiyo Tanaka
20161111 java one2016-feedback
Takashi Ito
IBMが新しいJava EEコンテナを作っているらしい -Libertyプロファイルとは-
Takakiyo Tanaka
JJUG CCC 2015 Spring: Liberty Profile Technical Deepdive:IBMの新しいアプリケーションサーバーの...
Takakiyo Tanaka
20161119 java one-feedback_osaka
Takashi Ito
見せます! 半歩先のクラウド型アプリケーション開発
Tatsuki Manchu
ついに始まるJava EE 7時代のアプリケーション開発
Takakiyo Tanaka
API Academy:マイクロサービス化へのファーストステップ
CA Technologies
JJUG CCC 2014 Spring IBM SDK for Java 8の全貌 #jjug_ccc #ccc_r57
Takakiyo Tanaka
Introduction to web development 1
hideaki honda
Jakarta EEとMicroprofileの上手な付き合い方と使い方 - JakartaOne Livestream Japan 2020
Hirofumi Iwasaki
Jakarta EE + MicroProfile との付き合い方
Hirofumi Iwasaki
Java EE 6で復活するエンタープライズJavaの世界
Takakiyo Tanaka
Beginning Java EE 6 勉強会(1) #bje_study
Toshiaki Maki
たった1時間でシステム構築!“激速”環境構築を実現する“パターン技術”の秘密とは
Rina Owaki
Zマイスターとの新たな価値探求 WebSphere
IBMソリューション
OSSではじめるオープン・スタンダードのクラウド @201304
Shinichiro Arai
More from Takakiyo Tanaka
(8)
PDF
Open Liberty / WebSphere Liberty
Takakiyo Tanaka
PDF
JJUGナイトセミナー OpenJDK祭り「OpenJ9+OpenJDK」
Takakiyo Tanaka
PDF
OutOfMemoryErrorとは
Takakiyo Tanaka
PDF
MicroProfile Starterで簡単スタート Open Liberty
Takakiyo Tanaka
PDF
オープンソースで提供される第二のJVM:OpenJ9 VMとIBM Javaについて
Takakiyo Tanaka
PDF
自分のDocker/Kubernetes環境を手に入れる ICP Community Editionで簡単構築
Takakiyo Tanaka
PDF
いよいよ始められる Java EEでのWebSocket #jjug #jjug_ccc #ccc_r21
Takakiyo Tanaka
PDF
Eclipse と Liberty プロファイルで始める Java EE 開発ハンズオン #jjug_ccc #ccc_r51
Takakiyo Tanaka
Open Liberty / WebSphere Liberty
Takakiyo Tanaka
JJUGナイトセミナー OpenJDK祭り「OpenJ9+OpenJDK」
Takakiyo Tanaka
OutOfMemoryErrorとは
Takakiyo Tanaka
MicroProfile Starterで簡単スタート Open Liberty
Takakiyo Tanaka
オープンソースで提供される第二のJVM:OpenJ9 VMとIBM Javaについて
Takakiyo Tanaka
自分のDocker/Kubernetes環境を手に入れる ICP Community Editionで簡単構築
Takakiyo Tanaka
いよいよ始められる Java EEでのWebSocket #jjug #jjug_ccc #ccc_r21
Takakiyo Tanaka
Eclipse と Liberty プロファイルで始める Java EE 開発ハンズオン #jjug_ccc #ccc_r51
Takakiyo Tanaka
Javaプログラマーももう逃げられない。マイクロサービスとAPIの世界。
1.
⽇日本アイ・ビー・エム株式会社 クラウド・ソフトウェア事業部 ⽥田中 孝清 Javaプログラマーも もう逃げられない マイクロサービスとAPIの世界 #ccc_f5
2.
© 2016 IBM
Corpora/on 2 #ccc_f5 アジェンダ q イントロダクション q マイクロサービスアーキテクチャー q Java EEとマイクロサービス q IBMの提供するSolution ¦ WebSphere Application Server ¦ IBM API Connect q まとめ
3.
© 2016 IBM
Corpora/on 3 #ccc_f5 イントロダクション
4.
© 2016 IBM
Corpora/on 4 #ccc_f5 ⼆二つの⽂文化に分かれる⽇日本のIT企業 リスクの最⼩小化 を優先 ミッション・クリティカルな アプリケーションの管理理、運⽤用 マラソンランナー q サービスレベル重視 q ウォーターフォール開発 q ⻑⾧長期に渡るシステム構築 イノベーションの スピードを優先 成⻑⾧長機会のための 探索索、開発、デプロイ スプリンター q スピード開発重視 q 試⾏行行錯誤、継続的デプロイ q 早期のシステム構築/改修 Web系企業 SI系企業
5.
© 2016 IBM
Corpora/on 5 #ccc_f5 Javaは,どちらかというと... 重厚⻑⾧長⼤大な業務システムでの使⽤用が多い
6.
© 2016 IBM
Corpora/on 6 #ccc_f5 ⽐比較的変化が遅い世界 q 「現在のアプリケーションを ⼀一から作り直すこともできないし」 q 「社外連携とかクラウドとかは当分先の話」 q 「うちなんか, まだJDK 1.4のシステムがありますよ」
7.
© 2016 IBM
Corpora/on 7 #ccc_f5 そろそろ逃げられなくなってきました q ブラウザの進化 q 最新セキュリティ技術への追随 q HTML5による アプリケーションのモダン化 q モバイル対応 q クラウドの利利⽤用
8.
© 2016 IBM
Corpora/on 8 #ccc_f5 ブラウザ:クライアント環境の急激な変遷 q MS IE 6 → 7/8/9/10/11/MS Edge ... q iOS 4/5/6/7/8/9 ... q Firefox/Chrome/Safari/Android...
9.
© 2016 IBM
Corpora/on 9 #ccc_f5 セキュリティ:SSL/TSL技術の陳腐化 q 2011 ¦ BEAST(CVE-‐‑‒2011-‐‑‒3389) n SSL,TLSのCBCモードの処理理の初期化ベクトル決定に関する問題で⽣生ずる脆弱性 q 2012 ¦ CRIME(CVE-‐‑‒2012-‐‑‒4929) n TLS圧縮機能に存在する脆弱性 q 2013 ¦ LuckyThirteen(CVE-‐‑‒2013-‐‑‒0169) n SSL,TLS,DTLSのCBCモードの処理理に存在する脆弱性 q 2014 ¦ POODLE(CVE-‐‑‒2014-‐‑‒3566) n SSL3.0のCBCモードの脆弱性 ¦ POODLE bites TLS(CVE-‐‑‒2014-‐‑‒8730) n POODLE同様の攻撃がTLS1.0でも利利⽤用できる q 2015 ¦ FREAK(CVE-‐‑‒2015-‐‑‒0204 / CVE-‐‑‒2015-‐‑‒0138) n 過去の暗号輸出規制時のグレードが使われる問題 ¦ Bar Mitzvah Attack(CVE-‐‑‒2015-‐‑‒2808) n RC4⾃自⾝身の脆弱性 ¦ Logjam(CVE-‐‑‒2015-‐‑‒400) n Diffie-‐‑‒Hellman鍵交換プロトコルを使⽤用したTLS接続で512ビットの輸出グレード暗号にダウングレードされる q 2016 ¦ SLOTH(CVE-‐‑‒2015-‐‑‒7575 / CVE-‐‑‒2016-‐‑‒0201) n TLS,MD5のHash衝突の脆弱性 ¦ DROWN(CVE-‐‑‒2016-‐‑‒0800) n SSL v2でRSAベースの証明書を使っていると、同⼀一証明書⽤用いたTLS通信が解読される問題
10.
© 2016 IBM
Corpora/on 10 #ccc_f5 HTML5 q HTML + JavaScript技術の普及と 各種ライブラリの台頭
11.
© 2016 IBM
Corpora/on 11 #ccc_f5 HTML5によるアプリケーションのモダン化 Web Browser Application Server Application HTTP Request HTML/JS Controller Session Data View Business LogicModel DomainDomain Web Browser Application Server Application View HTML/JS Controller Data Store Model Model DomainDomain RESTful or WebSocket JSON Business Logic 従来のWebアプリケーション Single Page Application (SPA) サーバーはクライアントアプリにサービス(API)を提供
12.
© 2016 IBM
Corpora/on 12 #ccc_f5 モバイルアプリケーションへの対応 q モバイルアプリケーションは(多くの場合MEAP経由で) バックエンドシステムをサービスとして利利⽤用 MEAP製品! ! Mobile! Enterprise! Application! Platform! ESB製品! SOAP / HTTP! REST! 基幹システムや クラウド・サービス 基幹システムや クラウド・サービス 基幹システムや クラウド・サービス
13.
© 2016 IBM
Corpora/on 13 #ccc_f5 クラウド対応 q クラウドの活⽤用は必須だが 全てをクラウドに出すことはできない ¦ 社内システムと社外クラウドを連携させる Hybrid Cloudへの挑戦 Hybrid Cloud クラウド上のシステム Social, Mobile, IoT 既存の社内システム CRM ERP 社内の各種データ Transactions Integration bus APIによる連携
14.
© 2016 IBM
Corpora/on 14 #ccc_f5 マイクロサービス・アーキテクチャーとは
15.
© 2016 IBM
Corpora/on 15 #ccc_f5 Microservices Architecture(MSA)とは q きっかけ ¦ ソフトウェア・ アーキテクチャーの⼤大家 マーティン・ファウラーの 2014年年3⽉月の Blogエントリー http://martinfowler.com/articles/microservices.html
16.
© 2016 IBM
Corpora/on 16 #ccc_f5 Microservices Architectureアプリケーション q 単⼀一の(モノリシックな)アプリとして実装するのではなく, 複数のサービスの統合として実装する ¦ 変更更の影響範囲を極⼩小化 ¦ 機能の再利利⽤用を促進 http://martinfowler.com/articles/microservices.html RESTを中⼼心とした APIによる連携
17.
© 2016 IBM
Corpora/on 17 #ccc_f5 2004〜~ IBM,Gartner他 どこかで聞き覚えが・・・ q SOA:Service Oriented Architecture
18.
© 2016 IBM
Corpora/on 18 #ccc_f5 Microservices ArchitectureはSOAの進化型 q モノリシック・アプリケーション ¦ 全体を単⼀一のコードとして実装 q SOA(サービス指向アーキテクチャー) ¦ サブシステムごとに独⽴立立して実装/依存関係が可視化 ¦ 連携の⼿手段:SOAP,バス型の連携基盤 q MSA(マイクロサービス・アーキテクチャー) ¦ システムを構成する機能(ファンクション)単位でサービス化 ¦ 連携の⼿手段:REST,多対多の直接連携 Monolithic App SOA Micro-services
19.
© 2016 IBM
Corpora/on 19 #ccc_f5 もっとも⼤大きな違いは・・・ q SOA:Service Oriented Architecture ¦ コンサルタントやITベンダーが考案した 「あるべきシステムの姿」 q Microservices Architecture ¦ 成功した企業のWebシステムから導き出した 「ベスト・プラクティス」 その効果は実証済み
20.
© 2016 IBM
Corpora/on 20 #ccc_f5 Microservices Architectureへの第⼀一歩 他のシステムから利利⽤用できるものを探す q システムが提供している機能で 外部から利利⽤用できると 便便利利になるものは? ¦ ユーザーの認証情報・属性 ¦ 製品の在庫情報 ¦ 発注処理理 ¦ ⽀支払い機能 etc. q APIとして公開する
21.
© 2016 IBM
Corpora/on 21 #ccc_f5 既存システムのMSA化:キーワードはAPI化 q 「既存システムを分割」することよりも q 「アプリケーションの機能を外部から呼べる」 ようにすることを重要視する q APIの先を順次拡⼤大 ¦ 社内の他システムからの呼び出し ¦ Webアプリから呼び出し ¦ モバイル・アプリから呼び出し ¦ 社外のシステムから呼び出し API連携 分割>
22.
© 2016 IBM
Corpora/on 22 #ccc_f5 Java EEとマイクロサービス
23.
© 2016 IBM
Corpora/on 23 #ccc_f5 2013年年に正式版となった最新仕様:Java EE 7 q Java EE 7の三つのゴール ¦ HTML5環境への対応 ¦ 開発⽣生産性の向上 ¦ エンタープライズ・ニーズへの対応 ⼤大幅な機能拡張
24.
© 2016 IBM
Corpora/on 24 #ccc_f5 Java EE 7 の主なAPI群 q JSR 342: Java Platform, Enterprise Edition 7 ¦ HTML5環境への対応 n JSR 344: JavaServer Faces (JSF) 2.2 n JSR 353: Java API for JSON Processing (JSONP) 1.0 n JSR 356: Java API for WebSocket 1.0 n JSR 339: Java API for RESTful Web Services (JAX-RS) 2.0 ¦ 開発生産性の向上 n JSR 345: Enterprise JavaBeans (EJB) 3.2 n JSR 346: Contexts and Dependency Injection for Java EE (CDI) 1.1 n JSR 907: Java Transaction API (JTA) 1.2 n JSR 349: Bean Validation 1.1 ¦ エンタープライズ・ニーズへの対応 n JSR 343: Java Message Service (JMS) 2.0 n JSR 338: Java Persistence API (JPA) 2.1 n JSR 236: Concurrency Utilities for Java EE 1.0 n JSR 352: Batch Applications for the Java Platform 1.0
25.
© 2016 IBM
Corpora/on 25 #ccc_f5 Java EEのシステム間連携 q J2EE 1.3以前 ¦ CORBA,RMI/IIOP q J2EE 1.4 ¦ JAX-‐‑‒RPC q Java EE 5 ¦ JAX-‐‑‒WS q Java EE 6 ¦ JAX-‐‑‒RS レガシーとの接続 エンタープライズ間の連携 あらゆるものとの連携
26.
© 2016 IBM
Corpora/on 26 #ccc_f5 JAX-‐‑‒RS 2.0:JavaでRESTfulなWebサービスを実現 q アノテーションベースでRESTfulなWebサービスを実装 q JAX-‐‑‒RS 2.0の新機能 ¦ クライアント⽤用のAPI → ブラウザとの連携だけでなくシステム間連携も ¦ ⾮非同期クライアント・⾮非同期サーバー ¦ メッセージ・フィルタおよびエンティティ・インターセプター Response response = ClientBuilder.newClient() .target("http://www.foo.com/book") .request(MediaType.TEXT_PLAIN) .get(); @Path("repository") public class TestRepositoryService { @Path("version") @GET @Produces("text/plain; charset=UTF-8") public String getVersion() { return "Test Service version 1.0"; }
27.
© 2016 IBM
Corpora/on 27 #ccc_f5 CDIによるアプリケーション内のPL / BLの分離離 q 画⾯面デザイン ¦ JSF / EL / Servlet / JSP q 外部連携 ¦ JAX-‐‑‒RS / WebSocket ¦ JAX-‐‑‒WS q 依存性注⼊入・ビジネスロジック ¦ CDI / EJB / JTA q DB連携・ORマッピング ¦ JPA JSF JSP / EL JAX-RS WebSocket CDI . EJB / JTA JPA Database
28.
© 2016 IBM
Corpora/on 28 #ccc_f5 MSAからみたJava EE 7の特徴 q RESTfulなWebサービスへの対応が進み API連携が容易易になった q CDIにより, Java EEアプリケーション内部の 部品化・サービス化もやりやすくなった
29.
© 2016 IBM
Corpora/on 29 #ccc_f5 WebSphere Application Server
30.
© 2016 IBM
Corpora/on 30 #ccc_f5 30 WASの新しいランタイム:Libertyプロファイル WAS V8.5.5 Liberty & WDT Java EE 7準拠 Java EE 7のFull Platform標準に 準拠したアプリを完全サポート JAX-WS, JAX-RS, JMSもサポート Unzipによる導⼊入とデプロイ パッケージをした サーバー + アプリ + 構成情報を Unzipでデプロイ可能 簡単な構成と動的変更更 最低限必要な構成ファイルは server.xmlひとつだけ デフォルトベースで簡単構成 構成変更更は再起動なしに反映 軽量量ランタイム メモリー使⽤用量量が⼩小さい: 60MB程度度〜~ ディスク使⽤用量量も100MB以下 起動が速い 起動時間: 5秒程度度 統合ツール(WDT) ⾼高機能なEclipse⽤用の連携ツールを無償で提供 Eclipseから簡単に使⽤用可能 ⾃自動化ツールとの連携 多くのOSSツールに 無償でプラグインを提供
31.
© 2016 IBM
Corpora/on 31 #ccc_f5 ② Libertyが軽量量な理理由 Servlet JSP JSF q Java EEなどのAPIやサーバーが提供する機能のうち、必 要な機能(Feature)のみを⾃自由に組み合わせることができる SSL JAX-‐‑‒RS JSON Monitor JPAJDBC CDI LDAP Registry JAX-‐‑‒WS JAX-‐‑‒B Admin Center JMSEJB lite EJB MDB Cluster § 必要な機能のみ稼動するため起動が速い! § Libertyプロファイル⾃自体のメモリー使⽤用量量も、60MB程度度
32.
© 2016 IBM
Corpora/on 32 #ccc_f5 API・サーバー機能をFeatureとして定義 q 必要なものだけを構成 ¦ 設定されたものだけがメモリにロード・初期化される → 最⼩小限の起動時間・メモリー使⽤用 ServletJSPJDBCSSL JAX-RS sessionDatabase <featureManager> <feature>jsp-‐2.3</feature> <feature>jdbc-‐4.1</feature> <feature>jaxrs-‐2.0</feature> <feature>sessionDatabase-‐1.0</feature> <feature>ssl-‐1.0</feature> </featureManager> 構成ファイル server.xml 依存関係も 自動的に解決 JSON
33.
© 2016 IBM
Corpora/on 33 #ccc_f5 Libertyプロファイルの「ゼロ・マイグレーション」 q 新しい仕様のバージョンに対応するフィーチャーが 追加されても,従来のバージョンも提供される ¦ 例例) 現在はServlet 3.1フィーチャーが提供されているが, Servlet 3.0フィーチャーも引き続き利利⽤用できる q アプリケーションで新仕様が必要なければ 従来のフィーチャーをそのまま利利⽤用可能 ¦ ただし,対応するJDKのバージョンは変更更される可能性がある servlet-‐‑‒3.0 servlet-‐‑‒3.1 servlet-‐‑‒3.0 servlet-‐‑‒3.1 新バージョン 新バージョン ⼀一般的なアプリケーションサーバー WAS Libertyプロファイル
34.
© 2016 IBM
Corpora/on 34 #ccc_f5 パッケージによる導⼊入 q 既存環境をZIPファイルにパッケージ ¦ アプリケーション・サーバー構成・Libertyランタイム q minifyオプションを指定することで アプリケーションが使⽤用するFeatureだけをパッケージ ¦ コンパクトな実⾏行行環境を作成可能 OS#1 Java SDK Liberty Profile サーバー構成 アプリケーション ①インストール ディスク ②サーバー構成 ③デプロイ OS#2 Java SDK Liberty Profile サーバー構成 アプリケーション ディスク server –package <サーバー名> -‐‑‒-‐‑‒include=minify zipファイル 元のサイズよりコ ンパクトに! zipファイルzipファイル ④パッケージ ⑤展開
35.
© 2016 IBM
Corpora/on 35 #ccc_f5 開発者版は無償で利利⽤用可能 q 名前の登録やIBMへの問い合わせなしに ⾃自由にダウンロード可能・使⽤用期限もなし 1. Eclipse Marketplaceから Liberty開発者ツールを導⼊入 開発者ツールをつかってLibertyをダウンロード 2. WASdev.netからランタイムをダウンロード
36.
© 2016 IBM
Corpora/on 36 #ccc_f5 様々なレベルでクラウドに対応 q オンプレミス⽤用のライセンスをIaaS上でも使⽤用可 q 様々な⾃自由度度でランタイムをPaaSとして提供 利用者が管理 プラットフォームが管理 利用者がパターンから作成 事前構成されたWASが提供(個別管理可能) Liberty Buildpack WAS on Cloud WAS Docker Containers PureApp Service
37.
© 2016 IBM
Corpora/on 37 #ccc_f5 IBM BluemixでのLibertyの使⽤用 ランタイム アプリ コード アプリ コード 開発者 ランタイムと呼ばれる実⾏行行環境を わずか30秒 で準備 様々なレベルで公開 -‐‑‒ Java EEに準拠したEAR/WAR -‐‑‒ アプリケーションコードと構成 -‐‑‒ アプリとLibertyランタイム Liberty以外の実⾏行行環境も提供 -‐‑‒ 任意の開発⾔言語を使⽤用可能 Bluemixのビルドパック
38.
© 2016 IBM
Corpora/on 38 #ccc_f5 IBM Bluemixの特徴 アプリケーションを、構築・管理理・実⾏行行するための、 SoftLayerを基盤とし、オープン・スタンダード(Cloud Foundry)を活⽤用した、 新しいクラウド・プラットフォーム(PaaS) スピーディーな 環境構築 豊富な「API」と 「サービス」の提供 DevOpsの実現 既存システムとの インテグレーション 堅牢牢な セキュリティ 柔軟な価格体系 お⽀支払い⽅方法
39.
© 2016 IBM
Corpora/on 39 #ccc_f5 IBM API Connect
40.
© 2016 IBM
Corpora/on 40 #ccc_f5 IBM API Connect V5 q API公開に関わるすべての作業を 1つの包括的ソリューションとして提供 外部のシステム 社内システム Integration bus Team Stats Ticketing 社内データ クラウドアプリ 開発者 API Connect 業務アプリ 開発者 WebSphere Application Server APIの カタログ と公開 Discover API
41.
© 2016 IBM
Corpora/on 41 #ccc_f5 API Connectの提供する4つの機能 q 作成 ¦ 容易易にAPI開発を⾏行行えるツール ¦ ビルド、テスト、デプロイ q 実⾏行行 ¦ APIを実⾏行行するランタイムの管理理 (WAS Liberty,Node.js) ¦ 監視、スケーリング q 管理理 ¦ 公開APIのポリシー定義 ¦ 利利⽤用状況の分析、課⾦金金 ¦ 開発者ポータルへの⾃自動連携 q 保護 ¦ APIの認証・認可 ¦ API利利⽤用者の認証とアクセス制御 ¦ アクセス数のレート制限 Create Run ManageSecure 作成 保護 実⾏行行 管理理 IBM API Connect
42.
© 2016 IBM
Corpora/on 42 #ccc_f5 StrongLoop社の買収とSolutionの融合 Create Run ManageSecure 作成 保護 実⾏行行 管理理 IBM API Connect IBM API Management StrongLoop / Node.js
43.
© 2016 IBM
Corpora/on 43 #ccc_f5 まとめ q クラウド・セキュリティなどの要件から そろそろJavaの世界も API化から逃げられなくなってきました q Microservices Architectureは 実証された有効なシステムアーキテクチャー q MSAの採⽤用では「分割」より「API化」が重要 q IBMは,業務システムのクラウド化・API化を 推進するソリューションを提供します
44.
© 2016 IBM
Corpora/on 44 #ccc_f5 最後に
45.
© 2016 IBM
Corpora/on 45 #ccc_f5 最新情報発表セミナー q WebSphere AS 最新情報セミナー 2016 〜~ Are You ready? Javaプラットフォームの新しい潮流流! 〜~ ¦ ⽇日時: 2016年年6⽉月23⽇日(⽊木) 15:00-‐‑‒17:30 (受付開始 14:30) ¦ 場所: ⽇日本アイ・ビー・エム株式会社 本社事業所(箱崎) ¦ 参加費: 無料料 https://ibm.biz/cloudsw_̲school_̲16
Download