SlideShare ist ein Scribd-Unternehmen logo
1 von 30
自律分散 JVM
マイクロサービス・クラウド

     矢野 勉


                1
モチベーション
• ひとりでも保守できるようにしたい
• アプリケーションとは本質的にステー
 トフル

• クラウドを生かすためにはステートレ
 スであるべき



                      2
ひとりでも保守できるようにしたい


   サーバというものは落ちるのが普通

落ちるたびにメール通知→即対応とかマジでウザイ
     落ち着いて酒も飲めやしない




                          3
ひとりでも保守できるようにしたい

   サーバというものは落ちるのが普通

•落ちたサーバにリクエストが飛んで欲しくない
→ 死ぬならちゃんと死んでくれ

•復旧作業とかしたくない
→ 落ちたサーバはもういなかったことにしたい


                         4
ひとりでも保守できるようにしたい


        自律分散
•サーバが死んだらサービスから自動的に切り離される
•サーバを起動したらサービスに自動的に接続する




                            5
Heart Beat
          find
  AP               Service
                    Service
                     Service
Server            Registrar
                  Registrar
                   Registrar
         return




                                            6
find
  AP               Service
                    Service
                     Service
Server            Registrar
                  Registrar
         return    Registrar




                               7
Heart Beat
          find
  AP               Service
                    Service
                     Service
Server            Registrar
                  Registrar
                   Registrar
         return




                                            8
アプリケーションとステートレス



   アプリケーション


   ユーザステートの管理




                  9
アプリケーションとステートレス



     アプリケーション
                    きる
              トレスにで
       理は ステー
    の処
  個々ユーザステートの管理
でも




                         9
Heart Beat
          find
  AP               Service
                    Service
                     Service
Server            Registrar
                  Registrar
                   Registrar
         return




                                            10
Heart Beat
          find
  AP               Service
                    Service
                        この部分は全部
                     Service
Server            Registrar
                  Registrar
                   Registrar「処理」
         return
                   なのでステートレス




                                      10
ステートレス

分散できる




         11
全部自分でつくるのがめんどくさい


    時間もないし…




                   12
Jini




       13
JINI

• 大昔のJava用分散サービス仕様
• もともとは組み込み用途を想定       ランプの精 リトル・ジーニー




• SunでBill Joyが開発してた
• 現Apache River
• gigaspace.com
                                        14
JINIで全部できる

                                                   Lease &Join
         Service Discovery
  AP                            Lookup
                                 Service
                                  Service
Server                          Service
                                Registrar
                                Registrar
         notification




                     Jini Extensible Remote Invocation




                                                                 15
Jini Extensible Remote Invocation
                 (JERI)

階層化されたプラガブルなリモート通信プロトコル


               Marshaling Layer
            Object Invocation Layer
               Transport Layer




                                      16
Jini Extensible Remote Invocation
                 (JERI)

階層化されたプラガブルなリモート通信プロトコル


               Marshaling Layer       差し替え可能

            Object Invocation Layer   変更不可

               Transport Layer        差し替え可能




                                               16
Jini Extensible Remote Invocation
               (JERI)
                 Message Pack/Protocol Buffer/Other
             Java Serialization
          Object Invocation Layer
                TCP-IP/SSL




                                                      17
マイクロサービス・クラウド
                                   Amazon Web Service




                               Heart Beat
          find
  AP               Service
                    Service
                     Service
Server            Registrar
                  Registrar
                   Registrar
         return




                                               さくら
            自宅サーバ
                           自社
                                                        18
あんなのとかこんなのとか
  積み上げたい…




               19
めんどうなところ




           20
• セキュリティマネージャ
• コードベースとクラスローダ
• バージョン管理


                  21
コードベースと
     セキュリティ・マネージャ


                        リモートメソッド



                              戻り値

       AP            外部
                        からク
                            ラス
                                       コードベース

     Server                    をロー
                                   ド
                                       class
コードベースからのダウンロードを
許可する設定が必要
コードベースのURLを書く必要がある



セキュリティ・マネージャ

                                                22
サービスのバージョンアップ


         リモートメソッド
  AP                 v1.1
Server
                    コードベース


                     class




                             23
サービスのバージョンアップ


         リモートメソッド
  AP                 v1.1
Server
                    コードベース


                     class
           どうやって変える?


  AP
                     v1.2
Server



                             23
com.uzabase.service.MyService
         version 1.1

                Javaは同じ名前のクラスを区別できない




com.uzabase.service.MyService
         version 1.2



                                       24
com.uzabase.service.v1_1.MyService
            version 1.1

                  名前を変えれば区別できる




com.uzabase.service.v1_2.MyService
            version 1.2



                                     25
Q&A


      26

Weitere ähnliche Inhalte

Ähnlich wie 分散JVMマイクロサーバの構築

LINE 2016 エンジニアインターン 01
LINE 2016 エンジニアインターン 01LINE 2016 エンジニアインターン 01
LINE 2016 エンジニアインターン 01LINE Corporation
 
SMFを用いたVyatta構成管理システムの開発
SMFを用いたVyatta構成管理システムの開発SMFを用いたVyatta構成管理システムの開発
SMFを用いたVyatta構成管理システムの開発SEIL SMF
 
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3日本Javaユーザーグループ
 
okuyama 勉強会 20110928
okuyama 勉強会 20110928okuyama 勉強会 20110928
okuyama 勉強会 20110928Hiroshi Bunya
 
Using Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba PiggUsing Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba PiggYuuki Namikawa
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理junichi anno
 
GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社
GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社
GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社Game Tools & Middleware Forum
 
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発 夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発 Takakiyo Tanaka
 
Engineer is Hero !! DevOps MSA and AI
Engineer is Hero !! DevOps MSA and AIEngineer is Hero !! DevOps MSA and AI
Engineer is Hero !! DevOps MSA and AIYoshio Terada
 
オープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbixオープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbixKodai Terashima
 
KDL主催セミナー 20120215
KDL主催セミナー 20120215KDL主催セミナー 20120215
KDL主催セミナー 20120215Hiroshi Bunya
 
Zabbix製品・サービス紹介資料
Zabbix製品・サービス紹介資料Zabbix製品・サービス紹介資料
Zabbix製品・サービス紹介資料Zabbix
 
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~Iwasaki Noboru
 
Chefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについてChefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについてYuuki Namikawa
 
Web API をデバックするときに必要なたったひとつのこと
Web API をデバックするときに必要なたったひとつのことWeb API をデバックするときに必要なたったひとつのこと
Web API をデバックするときに必要なたったひとつのことTomokazu Kiyohara
 
Cephベンチマーク kvm
Cephベンチマーク kvmCephベンチマーク kvm
Cephベンチマーク kvmToshimi Kawabata
 
Solaris11で深化するクラウド
Solaris11で深化するクラウドSolaris11で深化するクラウド
Solaris11で深化するクラウドYasushi Taki
 
オープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbixオープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbixKodai Terashima
 

Ähnlich wie 分散JVMマイクロサーバの構築 (20)

LINE 2016 エンジニアインターン 01
LINE 2016 エンジニアインターン 01LINE 2016 エンジニアインターン 01
LINE 2016 エンジニアインターン 01
 
cross2012a fujya
cross2012a fujyacross2012a fujya
cross2012a fujya
 
Fluentd meetup #2
Fluentd meetup #2Fluentd meetup #2
Fluentd meetup #2
 
SMFを用いたVyatta構成管理システムの開発
SMFを用いたVyatta構成管理システムの開発SMFを用いたVyatta構成管理システムの開発
SMFを用いたVyatta構成管理システムの開発
 
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
メッセージングプラットフォーム Zimbra の紹介とその活用術 - JJUG ナイトセミナー2013/3
 
okuyama 勉強会 20110928
okuyama 勉強会 20110928okuyama 勉強会 20110928
okuyama 勉強会 20110928
 
Using Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba PiggUsing Chef for Infrastructure Automation of Ameba Pigg
Using Chef for Infrastructure Automation of Ameba Pigg
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理
 
GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社
GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社
GTMF 2017:Photonの実用ケーススタディご紹介とPlayCanvas新機能 GMOクラウド株式会社
 
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発 夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
夏サミ2014 クラウドとCIツールで変わるエンタープライズJava開発
 
Engineer is Hero !! DevOps MSA and AI
Engineer is Hero !! DevOps MSA and AIEngineer is Hero !! DevOps MSA and AI
Engineer is Hero !! DevOps MSA and AI
 
オープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbixオープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbix
 
KDL主催セミナー 20120215
KDL主催セミナー 20120215KDL主催セミナー 20120215
KDL主催セミナー 20120215
 
Zabbix製品・サービス紹介資料
Zabbix製品・サービス紹介資料Zabbix製品・サービス紹介資料
Zabbix製品・サービス紹介資料
 
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~
20121115 オープンソースでハイアベイラビリティ! ~クラスタ管理の設計構築ハウツー&エンジニア思考力~
 
Chefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについてChefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについて
 
Web API をデバックするときに必要なたったひとつのこと
Web API をデバックするときに必要なたったひとつのことWeb API をデバックするときに必要なたったひとつのこと
Web API をデバックするときに必要なたったひとつのこと
 
Cephベンチマーク kvm
Cephベンチマーク kvmCephベンチマーク kvm
Cephベンチマーク kvm
 
Solaris11で深化するクラウド
Solaris11で深化するクラウドSolaris11で深化するクラウド
Solaris11で深化するクラウド
 
オープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbixオープンソースでシステム監視!統合監視ソフトウェアZabbix
オープンソースでシステム監視!統合監視ソフトウェアZabbix
 

Kürzlich hochgeladen

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 

Kürzlich hochgeladen (8)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 

分散JVMマイクロサーバの構築