ServerlessDays Tokyo 2019 に関する脳内ダンプ


これは10/22に東京都港区で行われた[ServerlessDays Tokyo 2019](https://tokyo.serverlessdays.io/)に関する個人的な脳内ダンプ・・・つまりポエムです。
自分のメモをベースに心の声や脳内(誤)変換も含めてそのまま形にしたものです。この先はそのことをご理解頂ける方のみお読みください[^1]。

<blockquote class="twitter-tweet"><p lang="und" dir="ltr">💪✨ <a href="https://twitter.com/hashtag/serverlessdays?src=hash&amp;ref_src=twsrc%5Etfw">#serverlessdays</a> <a href="https://twitter.com/hashtag/serverlesstokyo?src=hash&amp;ref_src=twsrc%5Etfw">#serverlesstokyo</a> <a href="https://t.co/4H60UqLK6F">pic.twitter.com/4H60UqLK6F</a></p>&mdash; Serverless(JP) (@serverlessjp) <a href="https://twitter.com/serverlessjp/status/1186583991073198081?ref_src=twsrc%5Etfw">October 22, 2019</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

(10/30 追記) 記事([Serverless Days Tokyo 2019 に参加してきました - cats cats cats](https://hinastory.github.io/cats-cats-cats/2019/10/27/serverless-days-tokyo-2019/))にしました。

[^1]: ポエムの内容は登壇者の発言も自分の感想もごちゃまぜです。また、登壇者の発言と思しきものも自分の印象で若干誤変換が入っている可能性があります。従って実際のセッション参加者なら多少の意味があるかもしれない内容ですが、それ以外の人は鵜呑みにしないでください。

# 会場の様子

会場になった[TABLOID](http://www.tabloid-tcd.com/)はもともとは印刷工場だったのを商業施設にしたそうです。

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">☺️☺️☺️<br>たくさんの人にお越しいただき嬉しいです🎉<a href="https://twitter.com/hashtag/serverlessdays?src=hash&amp;ref_src=twsrc%5Etfw">#serverlessdays</a> <a href="https://twitter.com/hashtag/serverlesstokyo?src=hash&amp;ref_src=twsrc%5Etfw">#serverlesstokyo</a> <a href="https://t.co/kdv9tUQRzD">pic.twitter.com/kdv9tUQRzD</a></p>&mdash; Serverless(JP) (@serverlessjp) <a href="https://twitter.com/serverlessjp/status/1186540285771169793?ref_src=twsrc%5Etfw">October 22, 2019</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

# メモ & 感想

- 10x Serverless Product Development for a Startup with Microsoft Azure @ Yutaka Tachibana(EBILAB)
    - メモ & 感想
        - [ゑびや](http://www.ise-ebiya.com/)は初めて知った
        - TOUCH POINT BI by [EBI LAB](https://ebilab.jp/)
        - カメラを使って入店率を調べたり来客予測をしたり
        - 社長がすごすぎ
            - 圧倒的Excel
        - Power BIを埋め込んだWeb App
            - レポートはカスタマサクセスチームが作成
            - nuxt.jsとLaravel
            - サーバはペラ一枚
            - iframeでPower BIを埋め込み
            - formsを利用
        - Azure Functions
            - 外注しやすいからGAになる前からPythonを利用
                - durable function未対応がつらい
        - サーバレスの利点
            - レゴブロック
            - 分業しやすい
                - ランサーズ利用
            - なるべくエンジニアがボトルネックにならないように
- Keynote @ Keisuke Nishitani (AWS)
    - メモ & 感想
        - LambdaはもともとEvent Drivenサービスとして発表
        - Lambdaネットワークキング
            - サービスチームのVPC内にある
            - ユーザのVPCに繋ぐ場合はENIを作成・・・これが遅い！
            - この問題はAWS Hyperplaneで改善
                - コールドスタートの改善
                - eniの消費改善
        - モダンアプリケーション
            - メッセージングを通してステートを取り除く
            - all you need is code
            - 付加価値を生まない重労働から解放
            - インテグレーションワークになる
            - 全てはサーバレスになる
- Keynote: Infinite Scaling, Finite Failures: Serverless Resiliency Patterns and Lessons Learned @ Katy Shimizu (Microsoft)
    - メモ & 感想
        - Durable Functions
- グローバル展開のコネクティッドカーを支える大規模サーバーレスシステム事例 @ Yuya Urayama (TOYOTA), Takanori Suzuki (Acroquest Technology) and Eiichiro Uchiumi (AWS)
    - メモ & 感想
        - 無駄な低減、無駄をマネージド
            - さすがTOYOTA、カイゼンに余念がない・・・
        - コネクティッドサービス
        - はじめてのアジャイル、はじめてのサーバレス
        - AWSにサポートに入ってもらった。師匠・・・
        - アーキテクチャスタイル
            - nティア
            - ウェブキューワーカー
            - マイクロサービス
        - サービスの用途や特性に応じてリアクティブスケーリングとプロアクティブスケーリングを使い分ける
        - サーバレスはテストがしずらい
            - [LocalStack](https://github.com/localstack/localstack)を使ってモッキング
            - [karate](https://github.com/intuit/karate)で連携テスト
            -  x-rayを活用したボトルネック調査
        - ユーザとAWSが組んでここまでやれるとはサーバレス恐るべし。ITベンダーが「中抜き」される案件続出の予感
        - メモ
            - [Serverless Days Tokyo 2019 トヨタ自動車・ダイキン工業 事例覚書 - Qiita](https://qiita.com/hiroeorz@github/items/c91851b23750d01a60a4)
- All You Need Is JavaScript @ Jensen Hussey / Cloudflare
    - メモ & 感想
        - CloudflareはCDN(コンテンツデリバリーネットワーク)の事業者
        - CloudflareのFaaSがCloudflare Workers
        - なぜJavaScript?
            - 世界で最も使われているから
        - なぜChrome V8
            - 速い、テストされている、WebAssembly
        - Isolates
            - WorkersはIsolatesのインスタンスを実行
            - cold startが早い
        - コンテナベース以外のFaaSは面白いと思った。IsolatesはどのくらいIsorateしてくれるのだろうか・・・
- [Zero Scale Abstraction in Knative Serving](https://speakerdeck.com/toversus/zero-scale-abstraction-in-knative-serving) @ Tsubasa Nagasawa (CyberAgent)
    - メモ & 感想
        - BuildはKnativeから離脱。きょうはServingについて
        - Servingを使うとオートスケールなデプロイメントが簡単に書ける
            - yaml地獄から解放
        - ゼロスケールを実現するためにキューを利用
        - その他にも死活監視やルーティングやスケーリングで苦労している
        - Servingのいいところ
            - 細かくスケーリングを調整できる
        - Servingの悪いとこと
            - ポッドあたりコンテナ一つ。サイドカーできない
            - ボリュームマウントが・・・
            - Nodeスケジューリングが不可。GPUノード使いたいけど・・・
            - Pod phantom killer・・・なにそれ、コワイ
- [空調設備向けIoTシステムにおけるクラウドランニングコスト](https://speakerdeck.com/nohara/kong-diao-she-bei-xiang-keiotsisutemuniokerukuraudoranningukosuto) @ 野原 健太 / ダイキン工業株式会社
    - メモ & 感想
        - サーバレスでやるしかない！
            - 500万台の空調機器と30万ユーザ
        - クラウドランニングコストとの戦い
            - DynamoDBのWCU書き込みコスト
                - Partition　KeyとSort kyeを工夫して、個別書き込みと一括読み込みを両立させる
            - Lambdaのコスト
        - 余談： EC2停止し忘れとログ出しすぎでクラウド破産
- [ISPがサーバレスに手を出した](https://speakerdeck.com/georgeorge/isp-challenges-serverless) @ 伊藤良哉 & 松田丈司 (NTTコミュニケーションズ)
    - メモ & 感想
        - 自社クラウドあるとAWS使い辛いよね（笑）
        - AWS初体験だから与信審査あるよ
        - IPv6の受難
            - API Gatewayは対応してない(泣)
            - CDNを挟んだ（（泣））
        -  AWSとAzureのマルチクラウド構成
            -  でも結局Azure排除 証明書ガガガ　
        - Serverless Framework使ってます
        - [Gatling](https://gatling.io/)いいよ。Scalaでテスト書くけどそれほど難しくない
            - 自分もつかっているけどマジでGatlingはおすすめ
- AWS Lake Formation で実現、マイクロサービスのサーバーレスな分散トレーシング @ 江藤武司 & 岩井良和 (Sony Corporation)
    - メモ & 感想
        - 複数アカウント、長期ログの保存、非同期等の課題あり
        - 短期はDataDogで長期はLake Formation
        - Xrayは非同期のトレーシングには向かない
        - トレースIDをいかに伝播させるかに課題があった
            - API gatewayはcustom http header
            - SNS,SQSはmessage attribute
            - Step Functionはinput parameter
            - S3は object meta data
            - オブジェクト削除は同一ラムダで処理するか削除メッセージ
        - 非同期の分散トレーシングの話は非常に参考になった
- Don’t think Serverless Security, think Application Security @ Ido Neeman (Nuweba) 
    - [PDF](https://www.nuweba.com/ebooks/Nuweba-Whitepaper-Dont-think-serverless-security-think-application-secuirty.pdf)
    - メモ & 感想
        - Denial of Walletという用語を初めて聞いた
            - サーバレスは無限にスケールするから、サービス不能になる前にお前が破産するよ
            - でも実際はLambdaには同時実行数の制限があるし、サーバレス固有のものではない
        - サーバレスは安全
            - エフェメラリティ（短期間しか実行されない）
            - 異常をみつけやすく制限を適用しやすい
        - サーバレス固有のセキュリティ問題は特にないから、アプリケーションのセキュリティに集中しよう
- [Azure でサーバーレス、 Infrastructure as Code どうしてますか？](https://www.slideshare.net/dzeyelid/iac-on-azure-for-serverless) @ Kazumi Ohira
    - メモ & 感想
        - IaCはインフラのリソース構成・管理をコードでおこなうこと
            - いいこといっぱい
        - Azureからの刺客なのでARM template押し
        - ARM = Azure Resource Manager
        - 冪等で並列で差分管理してくれるすごいやつ
        - Linked Templateはライブラリみたいなもの? テンプレートを外出しできる
        - Microsoft 謹製のVS Codeが便利で公式ドキュメントも充実！
        - といっておきながら最後はTerraformに傾いてズコーとなる
            - しかし、ここは個人的には[Pulumi](https://qiita.com/hinastory/items/e87a0feba445edd6135c)を押しておきたい
- The hidden cost and technical debt of running huge Serverless service on production @ James Nguyen / MaaS Global
    - メモ & 感想
        - スライドの機械翻訳と原文を見比べながら見るセッション
        - クラウドでも障害が起こる
        - クラウドだと最新のOSSが利用できるようになるまで待たされるかもしれない
        - クラウドのサービスの進化に追従しなくてはならない
        - クラウドでもベンダーロックインは起こる
        - マルチクラウドは簡単じゃない
        - 言われてみればそうだなぁ、という感じ。よくまとまっていた
- [Oracle も Serverless サービスやっています](https://www.slideshare.net/SuguruSugiyama/oracle-serverless) @ Sugiyama Suguru (スポンサーセッション)
    - メモ & 感想
        - OracleもFaaSやってます(Oracle functions)
        - [Fn Project](https://github.com/fnproject)というOSSベース
        - オンプレでもクラウドでも動く
        - Dockerイメージをアプロードして動かす
- [「サーバーレス」な同人誌の紹介](https://www.slideshare.net/nekoruri/20191022-serverless-books) @ めもおきば(nekoruri) (Lightning Talk)
    - [「サーバーレス」な同人誌を #ServerlessDays で紹介しました - めもおきば](https://d.nekoruri.jp/entry/2019/10/22/serverlessdays)
    - メモ & 感想
        - 持っている本
            - Knativeソースコードリーディング入門
            - 雰囲気でOAuth2.0を使っているエンジニアがOAuth2.0を整理して、理解できる本
            - Pragmatic Terraform on AWS
        - 欲しい本
            - Goで学ぶGoogleCloud Functionsの使い方
            - ゼロから始めるNetlify
            - OAuth、OAuth認証、OpenID Connectの違いを整理して、理解できる本
            - Microservices architecture よろず本 その三（初版は持っていたが３まで出ていたのか・・・）
            - NATSによるPub/Subメッセージング入門
- 目つぶり検証作成期 @ Kana Kitagawa (Lightning Talk)
    - メモ & 感想
        - プログラミング初心者がServerless FrameworkとAmazon Recognitionを使って目つぶり検証・・・
        - 普通にすごい & いい時代になったものだ・・・
        - 本人は大学4年生で写真専門らしい
        - 公式ドキュメントが正義！　この学びは素晴らしい
- SERVERLELESSなエンジニアのためのSERVERLESSなオンラインサロンをVUE/NUXT/COGNITO/STRIPEで作った話 @藤本竜之介 (Lightning Talk)
    - メモ & 感想
        - STRIPEだけ唯一分からなかったけどオンライン決済サービスか・・・
            - [インターネットビジネスのためのオンライン決済処理 - Stripe](https://stripe.com/jp)

# ドーナツのデプロイの様子

コーヒーとドーナツを頂きました。とても美味しかったです！

<blockquote class="twitter-tweet"><p lang="ja" dir="ltr">😋😋😋😋😋😋😋<br>ド ー ナ ッ ツ<br>再 デ プ ロ イ の<br>お 知 ら せ 🍩<br>😋😋😋😋😋🎃😋<a href="https://twitter.com/hashtag/serverlessdays?src=hash&amp;ref_src=twsrc%5Etfw">#serverlessdays</a><a href="https://twitter.com/hashtag/serverlessdtokyo?src=hash&amp;ref_src=twsrc%5Etfw">#serverlessdtokyo</a> <a href="https://t.co/ZGz1QHr2Zq">pic.twitter.com/ZGz1QHr2Zq</a></p>&mdash; Serverless(JP) (@serverlessjp) <a href="https://twitter.com/serverlessjp/status/1186513565890408449?ref_src=twsrc%5Etfw">October 22, 2019</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>


# 懇親会の様子

食事も美味しかったです！

<blockquote class="twitter-tweet"><p lang="und" dir="ltr">🍻🍻🍻<a href="https://twitter.com/hashtag/serverlessdays?src=hash&amp;ref_src=twsrc%5Etfw">#serverlessdays</a><a href="https://twitter.com/hashtag/serverlesstokyo?src=hash&amp;ref_src=twsrc%5Etfw">#serverlesstokyo</a> <a href="https://t.co/a9FNYnq7pP">pic.twitter.com/a9FNYnq7pP</a></p>&mdash; Serverless(JP) (@serverlessjp) <a href="https://twitter.com/serverlessjp/status/1186585831756062722?ref_src=twsrc%5Etfw">October 22, 2019</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

## まとめ

ServerlessDays Tokyoは初参加でしたが、学びしかない一日でした。
関係者、参加者の皆様お疲れさまでした！


次回は2019/12/14に[福岡](https://fukuoka.serverlessdays.io/)でやるそうなので、興味がある方はオススメです！

(10/30 追記) 記事([Serverless Days Tokyo 2019 に参加してきました - cats cats cats](https://hinastory.github.io/cats-cats-cats/2019/10/27/serverless-days-tokyo-2019/))にしました！