Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SIerで使われるサーバレスの実際 / System integrator with Serverless - Serverless Meetup Ryukyu #1

SIerで使われるサーバレスの実際 / System integrator with Serverless - Serverless Meetup Ryukyu #1

Serverless Meetup Ryukyu #1
https://serverless.connpass.com/event/126902/
でお話した資料です。

Koichiro Nishijima

April 26, 2019
Tweet

More Decks by Koichiro Nishijima

Other Decks in Technology

Transcript

  1. SIer
    で使われるサーバレスの実際
    2019
    年4
    ⽉26
    ⽇ Serverless Meetup Ryukyu #1
    @k_nishijima

    View Slide

  2. 参加者属性調査
    サーバレスなひと?
    サーバありなひと?
    @k_nishijima #serverlessryukyu #1 2

    View Slide

  3. ならば戦争だ

    View Slide

  4. ウソです
    仲良く情報共有しましょう

    View Slide

  5. 参加者属性調査
    B2C
    なひと? Web?
    アプリ?
    B2B/B2B2C
    なひと? SaaS? SIer?
    @k_nishijima #serverlessryukyu #1 5

    View Slide

  6. 今⽇はSIer/SaaS/B2B
    ⽅⾯から
    現場で使われるサーバレスのおはなし
    @k_nishijima #serverlessryukyu #1 6

    View Slide

  7. ⾃⼰紹介
    @k_nishijima /
    ⻄島 幸⼀郎
    ⼤阪の会社であるアールスリ
    ーインスティテュートに、沖
    縄のワンコx2
    がいる⾃宅から
    リモートワークで参加。
    根っからのクラウド・コミュ
    ニティ⼤好き⼈間。オープン
    ソースとクラフトビールをこ
    よなく愛する。
    @k_nishijima #serverlessryukyu #1 7

    View Slide

  8. コミュニティ活動⾊々やってます
    JAWS-UG
    沖縄 コアメンバー
    ハッカーズチャンプルー 実⾏委員⻑
    JP_Stripes OKA
    @k_nishijima #serverlessryukyu #1 8

    View Slide

  9. ということでサーバレスのおはなし
    どんな領域に適応しているのかの実異例
    何故サーバレスなのか
    何がおすすめで何がおすすめでないのか
    と⾔った辺りを共有したいと思います
    @k_nishijima #serverlessryukyu #1 9

    View Slide

  10. サーバレスを
    どのような
    領域に適応して
    いるのか?
    @k_nishijima #serverlessryukyu #1 10

    View Slide

  11. SaaS
    の例 : gusuku Customine
    kintone
    のJavaScript
    によるプログラミングの柔軟性を、⾮エンジニ
    アでもフル活⽤できる No-Code
    プラットフォーム
    gusuku Customine https://customine.gusuku.io/
    gusuku Deploit https://deploit.gusuku.io/
    @k_nishijima #serverlessryukyu #1 11

    View Slide

  12. フロントはSPA
    API
    サーバにDropwizard
    バックエンドに普通のデー
    タベース
    独⽴した機能群を多数サー
    バレスで提供
    @k_nishijima #serverlessryukyu #1 12

    View Slide

  13. 独⽴した機能群?
    サムネイル画像作成
    帳票出⼒
    kintone
    アプリのバックアップジョブ
    固有の条件を指定してのファイル単位の暗号化
    cron
    的なバッチジョブ
    などなど
    @k_nishijima #serverlessryukyu #1 13

    View Slide

  14. 何故サーバ +
    サーバレス?
    機能ごとのデプロイが容易
    ⾮常に負荷の⾼い処理やスケールさせたい機能はサーバレスなコー
    ドに分離

    相対的なパフォーマンス増
    そもそも
    業務システム的なかっちりとしたRDB
    が後ろにある場合、スパイク
    しやすいサーバレスなコード群を直接つなぐのは望ましくない(コ
    ネクション溢れてDB
    側が死ぬ、など)
    @k_nishijima #serverlessryukyu #1 14

    View Slide

  15. 何故サーバ +
    サーバレス?
    それぞれの機能群からはデータベースを直接参照しません
    (させません)
    全てAPI
    経由で安⼼・安全♪
    マイクロサービスっぽいアーキテクチャですが、
    もう少し粒度が⼤きいイメージ
    どうしても通信の分だけはオーバーヘッドが発⽣するので、レイテ
    ンシーがあまり気にならない部分には、積極的に採⽤していくのを
    おすすめします
    @k_nishijima #serverlessryukyu #1 15

    View Slide

  16. もう⼀つ別の例
    @k_nishijima #serverlessryukyu #1 16

    View Slide

  17. 業務システム
    開発の例
    どこでサーバレスなコードを
    使っているか?
    @k_nishijima #serverlessryukyu #1 17

    View Slide

  18. Everywhere!
    アールスリーインスティテュートが⾏っている
    システム開発においては、
    どこもかしこもサーバレスです

    View Slide

  19. 例えば?
    フロントは kintone
    や SPA
    、モバイルアプリ
    ビジネスロジックは API Gateway + Lambda
    データストレージは DynamoDB / S3
    バッチは Lambda + CloudWatch Events
    ※伝統的なRDB
    が出てきていないところに注意
    (何年も続いている保守案件では、オンプレだったりの
    お守りをしているチームも勿論あります )
    @k_nishijima #serverlessryukyu #1 19

    View Slide

  20. 何故伝統的な3
    層構造ではないのか?
    何故フルスクラッチでサーバを⽴てて
    チューニングして
    DB
    をセットアップしてひとまとめにして
    システムをデリバリしていないのか?
    @k_nishijima #serverlessryukyu #1 20

    View Slide

  21. 「価値」を出す部分
    以外の要素が多すぎる
    システムの価値は、それを使って諸問題を
    解決してはじめて価値がある
    それを動かすためのものは、すべておまけ
    むしろ楽しくて仕⽅ないだけに、
    スピードの⾯においては害悪ですらある
    @k_nishijima #serverlessryukyu #1 21

    View Slide

  22. 天の声「Docker
    でKubernetes

    デプロイすればいいじゃん?」
    単純にそれすらも運⽤保守⾯倒
    ⾃分のコード以外はメンテしたくないんですっ|
    ⼺サッ
    @k_nishijima #serverlessryukyu #1 22

    View Slide

  23. もっとも速く価値を出すにはマネージ
    ドなサーバレスを活⽤するのが最短
    なので
    リソース(時間やコスト)の無いかた
    速く結果だけが⾒たいかた
    にはサーバレスアーキテクチャをオススメします
    @k_nishijima #serverlessryukyu #1 23

    View Slide

  24. SI
    案件でサーバレス環境を使うノウハウ
    ピタゴラスイッチ問題(

    ある程度まではパターンで解決)
    Observability
    問題(

    もともとバッチなんかはtraceability
    命なん
    で…

    ↑もっと⼩さい粒度が欲しければOpenCensus
    とか⾏く必要あり
    メッセージング基盤どうするの問題
    この辺話しだすには時間が⾜りないので次回(あればw
    @k_nishijima #serverlessryukyu #1 24

    View Slide

  25. Thank you!
    @k_nishijima #serverlessryukyu #1 25

    View Slide