1最強の 環境やっぱり AppEngine ja night #1Yosuke SuzukiNikkei Inc.
View Slide
About meEngineer at Nikkei Inc.2Yosuke Suzuki @yosukepPython, Golang, JavaScriptウェブの運用とか編集者とか記者の仕事歴も長い
日経電子版について3● 2010年3月に創刊● 有料会員50万人以上のニュースサービス● 月間アクセス3億件
日経電子版の開発チーム4● API開発● モバイルアプリ● ブラウザー向け● インフラ● データ分析内製での開発体制を強化、エンジニアを絶賛採用中
FinancialTimesとの連携5● 2015年12月買収● 開発ノウハウの共有● 英語力++○ 英語を話すランチ会も開催中英語をコミュニケーションの主言語として使うチームもある
本題6
Google App Engineの利用実績7● 2011年ごろから利用● PythonとGo● Pythonのほうは本番環境で稼働中● Goはツールとして利用● 他のGCPサービスも利用AppEngine BigQueryVisionAPINaturalLanguage API
秒間200リクエストをさばく8
秒間200リクエストをさばく(2)9● Pythonアプリ● 100万リクエスト/日● インスタンス数は3 ~26 といい感じにスケールアウト/イン
なぜ AppEngine?10● 元々は実験的プロジェクトで使っていた● iFrameで呼び出されている一部の部品○ 疎結合なので組み込みやすかった● 米国にある他社APIの呼び出し○ どうせ米国に問い合わせるならレイテンシーは問題にならない● 立ち上げ期間が短かった
GAE/Standardのすごいところ(1)11● 運用コストがほぼゼロ○ ほぼ誰も何もしてない、放置プレー○ 勝手にスケールアウト・イン○ Datastoreはひたすら放り込むだけ
GAE/Standardのすごいところ(2)12● いわゆるモダンな開発に必要なものはだいたい付いている○ Blue/Greenデプロイ○ A/Bテスト○ ロギング● 利用料は100万リクエス ト/日クラスのプロジェクトでも4-5万円
GAE/Standardじゃない場合13● Elastic Beanstalkに独自のblue/greenデプロイを構築● Dockerコンテナーの起動はそんなに早くない● JenkinsとかRundeck、Sentry、Newrelicとか色々用意しないといけない● 優秀なエンジニアがたくさん必要
GAE/Standardの頑張って欲しいところ14● 東京リージョンほしい● Python3に対応して欲しい○ Flexibleじゃなくて○ 電子版のGAE以外のプロジェトはPython3.5以上を採用している● Searchは正直微妙、スケールしない● CIからのデプロイがしにくい
We're hiring!s.nikkei.com/saiyoPythonエンジニア(機械学習できるひと歓迎)フロントエンドエンジニアアプリエンジニアデザイナー15