Microservices Framework for Java-Japanease

Microservices Framework for Java-Japanease

829e112d84c7c719c123d52b69fba5f0?s=128

Hiroki Matsumoto

January 23, 2019
Tweet

Transcript

  1. Kubernetes Sapporo for Beginners Microservices Framework for Java ~ Kubernetes使う上でJavaアプリケーション開発~

  2. Kubernetes Sapporo for Beginners 自己紹介 松本 宏紀 ( まつもと ひろき

    ) • システム・アーキテクト。ソフトウェア・エンジニア。 • 何かのEvangelist、Advocate、Developer Relationsの類ではない。 • Kubernetes Sapporo for Beginners主催者。 • 仕事でのKubernetesと自分の関わり ◦ デブサミ2018夏「Cassandra x Kubernetesによる大規模データ基盤の仕組みと苦労 」 ◦ デブサミ2019「SpringBootでマイクロサービス作って苦労した話 」 Twitter:@hirokimatsumo13
  3. Kubernetes Sapporo for Beginners Kubernetes どんなアプリケーションを作る? • 単純に全てのAppインフラとして使う。 • 機械学習

    • サーバーレス アーキテクチャ • マイクロサービス アーキテクチャ
  4. Kubernetes Sapporo for Beginners Micro Services • The Twelve-Factor App

    • Microservices - Martin Fowler • Pattern: Microservice Architecture 他にもAnti Patternsの話とかあるけど、ケースバイケース。 例:The Entity Service Antipattern 大事なのは、自律性を高めるための、疎結合な組織・システムの設計をしてス ケーラビリティを確保する。
  5. Kubernetes Sapporo for Beginners Micro Services で、Javaだと何で開発すればいいの?

  6. Kubernetes Sapporo for Beginners Micro Services Framework JavaでMicro Services Frameworkと言われる

    (使われる ) もの。 • Spring Framework ◦ Spring Boot ◦ Spring Cloud ◦ Spring Fu • Eclipse MicroProfile • Micronaut • Helidon SE/MP • WildFly Swarm • Payara • Javalin • Apache TomEE • Light4j • その他いっぱい
  7. Kubernetes Sapporo for Beginners Micro Services Framework 試しに触ってほしいもの。 ただ、どれも今はまだ configmap

    ( ex:application.yaml) のreloadに完全には対応でいてない ( Config Server )。 ※Spring Cloud Kubernetesに期待。今もある程度動くが、それなりに制限はある。 という Spring Boot Micronaut フルスタック。コンパイル時にDI解決。( native化したら起動速度30msとかのレベル感 ) 早いはエンジニアを幸せにする。 簡単なSpringなら、Micronautに変換しやすい。 Eclipse/MicroProfile フルスタック。 ドキュメント豊富。パブリッククラウドベンダーのチュートリアルとかにもよく登場。 起動遅い。 ( Spring Fu:より小さく、更にnative化に愛称良く作ろうとしてる ) Kubernetesで動かそうと思うと、機能が被る等あり…ライブラリ選択大変。 Javaみたいに仕様と実装になっているのが良い?じゃあこれ! でも、処理速度がまだ・・・いまいちな気がする。
  8. Kubernetes Sapporo for Beginners Let's enjoy 自分たちが持つ技術的資産の有効活用も大事。 そこに拘り過ぎて開発の速度感を落とすなら本末転倒。 マイクロサービスで開発をするなら、自分たちでそのサービスにあった 技術選定ができる事が大事。

  9. Kubernetes Sapporo for Beginners Let's enjoy 英語は大事。