Save 37% off PRO during our Black Friday Sale! »

5 years with Google App Engine

3ceba985a8d8efb44ef9c7d74089efdb?s=47 Yosuke
June 08, 2016

5 years with Google App Engine

appengine ja night #33のLTでの発表

3ceba985a8d8efb44ef9c7d74089efdb?s=128

Yosuke

June 08, 2016
Tweet

Transcript

  1. 5 years with Google App Engine (GAEを5年本番運用して) Yosuke Suzuki Nikkei

    Inc.
  2. Who am I ? Yosuke Suzuki ( @yosukep ) Python

    Engineer @ Nikkei Inc. Private work: Go / ReactNative / Pebble
  3. GAE in nikkei.com 日経電子版でのGAE利用 • 2011~ • Small application backends

    ◦ スマホアプリのバックエンドとか小さめのサービスのAPI とかで利用 ◦ ただし、1日100万リクエスト以上をさばいているのもある • Internal tools ◦ 社内ツール用に利用、Slackへの通知
  4. Serverless? サーバーレスって??? • Without servers, we cannot do anything サーバーなかったら何もできないのでは

    • "Serverless" is a buzzword? • What important is that we can get servers in a second when we need them ◦ 重要なのは必要なときに必要なサーバーをすぐに調達できる こと ◦ GAE scales out in a second! ◦ スケールアウトが自在だからコスパも高い
  5. Scale out くどいですがスケールアウトがすごい • It takes a minute to start

    up a VM instance VMだと1分はかかりますよね ◦ GAE/Python or GAE/Go scales out in a second ニュースサイトは、朝や昼にアクセスが集中するが勝手に対応してくれる 3 instance ~ 15 instances, automatically managed
  6. Versions == Blue-Green Deployment • Easy to check new features

    on production environment • Rollback in seconds? これは割と時間かかるときも • 同じこととを他社クラウドで実装しようとしたらけっこう手間 かかった
  7. TaskQue ≒ Lambda + SQS • Easy and scalable batch

    system 勝手にリトライしてくれて、決めた範囲で 適当にスケールアウトしてくれる • SQSだと値だけを積む感じだけど、処理と値を一緒に登録できる • Lambdaもいいけど、TaskQueでだいぶ前からやってたこと
  8. Other features • Easy admin authentication ◦ 簡単なツールを作るときにすごい便利 ◦ API書いてJSでCRUD作るとか

    • Dynamic image transforming ◦ =s320-c って付けると長辺320の正方形で返す - url: /admin/.* script: _go_app login: admin secure: always app.yamlにこれ書くだけ https://lh3.googleusercontent. com/X3c0jAiFsXSWaXNEVXNvrnTfxx0M9Ib1lEA5bqdcLBO1 f8PEbpOyCRqDKtxVs5PjcfvFPIsfb8OaulkC4g=s320-c
  9. Conclusions • GAE has almost features we need to operate

    servers efficiently ◦ GAEにはDevOpsで語られるような機能はほとんどある ▪ CircleCIとか適当なCIサービス連携も簡単 ◦ しかも、何年も前から ◦ 時代が追いついてきた
  10. Need improvement • Latency ◦ 東京からだと往復で最低で 300msec 追加される ◦ 東京リージョンまだ?

    • Python3 ◦ 来ない? Flexibleだけ? • Datastore is fantastic but… ◦ ありもののFW/アプリがそのまま動かない ◦ クエリできるKVSだと思っておくのが無難
  11. We're hiring s.nikkei.com/saiyo • APIエンジニア(Python/Elasticsearch/Machine Learning) • フロントエンドエンジニア(ES6/Node.js) • iOSエンジニア

    • データ分析