Skip to content

Instantly share code, notes, and snippets.

@flatfisher
Created September 25, 2018 10:27
Show Gist options
  • Save flatfisher/d5b59f6d31e5dbc3724d82bef650cddb to your computer and use it in GitHub Desktop.
Save flatfisher/d5b59f6d31e5dbc3724d82bef650cddb to your computer and use it in GitHub Desktop.
Dogrun Serverless / Firebase 参加メモ

Dogrun

Dogrunと呼ばれるFireside chatイベントがCloud Next の裏イベントでありました。 https://gcpug-tokyo.connpass.com/event/95560/

来日しているProduct Manager、Developer Advocate、実際にProductを作っているSoftware Engineerの方々とFireside Chatを行いました。

普段気になっていることや裏話が聞けて楽しかったです。

各トピック

私は Serverless / Firebase 部屋に行きました。他の部屋で発表された内容は後日GCPUGで発表される予定?です。

  • Google Kubernate Engine
  • Serverless / Firebase
  • Machine Learing / Google Cloud Auto ML
  • Spanner / Firestore / Datastore
  • Bigquery / Dataflow

Serverless / Firebase

  • Firebase Functions と Cloud Functions の違いは?
    • 基本的に中身は一緒
    • Firebase FunctionsはCloud Functionsを継承しているので、先にリリースされるのはCloud Functions
    • Firebase functions のRuntimeでPython と Go を対応する予定はまだない
  • Firebase と GCPの壁はどうなってんの? CLIなど
    • Firebase は Google Platform BaseだがFirebase は Mobile と Web 向けのため基本的には別サービス扱い
    • スムーズに使えるようにするため努力する
    • モバイルの世界はFirebase, インフラはGCPなどにしていきたい
    • Firebase admin SDK はGCPサービスアカウント使える
  • Cloud Functions からのリクエストであることを確認・認証する方法はあるの?
    • gloud alpha でできるようなっているので試してほしい
    • IAMを使う cloud functions id
  • 今後のRuntimeの予定は?
    • Python, Node, Go, Java, PHP(たぶんない)
    • 基本的には言語コミュニティに準拠する
    • Serverless Container があればどの言語でもいけるようになる
      • 例 Rust
    • Functions と GAEとの違いは?(急に話が変わった)
      • シンプルな開発感覚
      • HTTPサーバーを気にする必要がない
      • Pub/Subとかのイベント処理が容易
      • 1個のインスタンスでさばけるところまでさばく(GAE)
      • リクエスト毎にインスタンスが立ち上がる(GCF)
      • FE、SE、GCFの使い分けを明示する予定
    • 他のランタイムでのエミュレーターの予定は?
      • はい、あります。もっと簡単にローカルでちゃんとやりたい
      • どういうレベルまでのテスト環境を作成するか追求したい。完全なGCFの環境を作るのは無理かな。
        • ローカルに準備しにくい、GCSやDBなどの接続の環境(イベント)を作るのが難しい(HTTPだけではないので)
      • PythonやGOのサポートは直近ではサポート予定無し
  • Cloud Functions Cloud Endpointの連携予定はありますか?
    • 副業的な感じで取り組んでます
    • マイクロサービスみたいにしたい
    • 気長に待とう
  • 将来1つのFirebaseプロジェクトに複数のFirestore DBの作れるようになりますか?
    • 計画はあるが、 時期は決まってない
    • name_space でなんとかしてくれ
  • Firebase CLI gcloud コマンドは統合されますか?
    • 統合の予定なし
    • 会場 「alias で gcloud firebase 作ってるぜ」
  • 現状移行予定がないApp Engine Service は廃止されますか?
    • Searchなど
    • そもそもなんでGAE依存のサービスが多いの?
      • GAE登場当初はGCPではなかった。基本GAEベースでサービスが生まれていった
      • CacheとかGAEのために組み込む必要があった → memcacheが生まれる
    • GAE専用のサービスは今後独立させていく予定
      • どのGCPプロダクトからでもアクセスできるようにしたい
      • Task Queue, GAEのものだった機能は独立させていく
      • memcache は Cloud Memorystore
      • CronはCloud Schedulerなど
      • Search はまだ
        • これがないのは恥ずかしいから頑張る
      • Image API のようなものは廃止予定ではなく今後も使える
        • 他のサービスからサワれるようにする計画がある
  • Cloud Functions VPC networking を使っても Memory StoreにFuncrtionsから接続できるようにならないか?今後のサポート予定はある?
    • ある!
    • Cloud Loadbalancer の奥にいるやつとアクセスできるようにする
  • Cloud Scheduler を使えばHTTP Endpoint を持つCloud Functionsを呼び出せますが、HTTP Endpoint を作らずに呼び出せる予定は?
    • pub/sub でできる!
    • Cloud Scheduler からFunctionsを起こす機能を追加する予定はあるが、まずCloud SchedulerをGAにあげたいため後回し
  • FirestoreでRealtime Database の onDisconnect は実装されますか?
    • ない
  • Server Side Cache をするにはどうすればいいでしょうか?
    • VPCがCloud functions に入ると、managedのredisを使う
  • App Engine の1st generation ランタイムは将来的にdeprecation policyに従って廃止されますか?
    • ランタイム(言語コミュニティに準拠する)による例えば2020年までにPython27はサポート切れる
    • ndb に変わる新しいものができる。今の機能も包布する予定
    • GoogleにはたくさんのPython 2.7 のコードがあるので我々もPython3.7への移行に必死
    • 他の言語も含めて1st generationが今すぐ死ぬわけではないから安心してくれ、でも早く対応したほうがいい
  • GCFとKnativeやCloud Eventsは将来的にマージされますか?
    • Cloud Functions
    • OSSな kubernates istio
    • いま沢山のサービスがあって混乱しそうだが、KnativeはOSS
    • 沢山の選択肢はそれぞれ尊重したい
      • ユーザーの課題解決のためにうまれたプロダクトが多い
    • 今は沢山プロダクトが多いが、必ず将来に向けて整理していく、後数年待っててくれ!
  • Cloud Functions で Stackdriver Debugger の正式サポート予定はあるか?
    • yes 計画はしている
    • 言語のサポートなど色々模索している
  • God of Cloud についてどう思いますか?
    • Tシャツ欲しい
  • Firebase beta ML Kit とか C++ 対応する?
    • Fitrestoreはある
    • Unity の C++ 対応に向けて色々動いてる
    • Firestore C++ サポートはまだ公開してないから秘密にしてく
      • これ公開しちゃいけないやつだった!
  • Cloud Functions コールドスタート問題
    • コールドスタートの遅さを改善するのに努力していている
    • 必要なときに必要なライブラリを呼ぶようにしてください
      • 立ち上げ時に色々importするとめっちゃ遅くなるよ
    • 定期的なリクエストで起こすのはあまり意味ないよ
    • 実行するたびにライブラリを読み込まない
    • Stackdriverのログでボトルネックを分析してくれ
  • Firestore の Archive 機能
    • Managed Exportを使ってください
  • goapp と gcloud app どっち使えばいいの?
    • gcloud app deploy を使ってくれ
  • firebase functions は デフォルトのリージョンは指定できる
    • —regionも指定できる
    • 同じコードを2箇所へのデプロイしたい場合はコピペしてくれ
      • 近い場所のリージョンを叩かせたい
        • ロードバランサーを組み合わせて多々けるようにする。かなり時間かかりそう。
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment