SlideShare a Scribd company logo
1 of 28
Google App Engine/Goを
触ってみた
第1回 関西golang勉強会
Bascule 松本 雅博
自己紹介
• 松本 雅博(@massan_77)
• 株式会社Bascule 大阪オフィス
• バックエンドの開発を担当
• 所属コミュニティ
– GCPUG大阪支部長
– 関西おうちハッククラウド部長
– 関西ハッカソン勉強会
– KUG2
• http://www.bascule.co.jp/
• クリエイティブ集団
 「自分たちしかできない新しいクリ
エイティブ領域でものを創る」
 「今これやったらヤバいよね」って
ものを創りたい
• 300以上の賞を受賞
 先人の実績です
 僕は2015/6入社
GCPUG(ジーシーパグ)
Google Cloud Platform User Group
• http://gcpug.jp/
• GCPを広く普及させる。
• GCPの良いところを伸ばし(広め)
• 良くないところを改善
(Googleに意見)する。
関西おうちハック
• https://kansaiouchihack.doorkeeper.jp/
• 「おうち」をテーマにハック
• より快適な「おうち」を作り出していこう
おうちハック
おうちハック
Go言語歴:1ヶ月
実際に触ったのは1週間
Go言語をはじめたきっかけ
新しく言語を身につけたかった
新しく言語を身につけたかった
• ネットで話題になってる
– シンプルらしい
– 実行速度が早いらしい
– 並列処理が簡単にかけるらしい
– スマホアプリもかけるらしい
Google App Engineとは?
A Tour of Go を やってみる
_人人人人人_
> 挫折! <
 ̄Y^Y^Y^Y ̄
まずは何か作ってみることに
環境構築もお手軽に
Google App Engine
Google App Engineとは?
• Googleの提供するPaaS
– Java, Python, PHP, Go をサポート
– Go言語版は2011年5月よりベータ版を提供
2015年7月より正式版
• 2015年10月現在、Goのバージョンは1.4
– 1.5への対応予定ありだが時期は未定
なぜ、Google App Engine?
• 環境がすでにあった
– ローカルで動かすことも簡単
• SDKを導入するだけ
• 期間の限定なく無料
– 1日単位で無料枠がリセットされる
なぜ、Google App Engine?
• 運用の手間を減らすことができる
– スケーリング不要
• アクセスに応じて自動的に勝手にスケール
– 起動も早い
– PaaSなのでサーバ構築不要
• 開発に集中できる
• オールインワン
– DataStore, Memcache, TaskQueueなど
なぜ、Google App Engine/Go?
• 起動が早い(スピンアップ)
– リクエストをトリガーにインスタンスが起動する
• この時間が4言語中でもっとも早い(数ms)
• PaaS上での処理時間は40msだった
– Hello Worldのみ
– 他の言語は試していないので比較してみたい
お手軽さのデモ
制限事項
• goroutineは実質使えない
– The Go runtime environment for App Engine provides full support for
goroutines, but not for parallel execution: goroutines are scheduled
onto a single operating system thread.
– IO待ち等で他のgoroutineに処理を渡すので、GAEでも利
用します(@sinmetal)
• Google App Engine共通の制約
– ローカルファイルにアクセスできないなど
Goを触った感想
• 簡単!
– 言語仕様がシンプル
• DataStoreへのCRUD, JSON返却しかしてないけど
• 標準でコード整形機能がある
– コーディング規約宗教戦争が起きない
• 未使用import, 変数があるとビルドエラー
– クリーンなコード
今後やりたいこと/しりたいこと
• 自動テストの導入
– おすすめライブラリとか
• 例外処理についてまなぶ
• アプリサーバを書いてみたい
– goroutineとかChannelをつかってみたい
ご清聴ありがとうございました!

More Related Content

Viewers also liked

S94 Microsoft Azure セキュリティについて
S94 Microsoft Azure セキュリティについてS94 Microsoft Azure セキュリティについて
S94 Microsoft Azure セキュリティについて
Microsoft Azure Japan
 
S03 企業内システムと Microsoft Azure の VPN 接続
S03 企業内システムと Microsoft Azure の VPN 接続S03 企業内システムと Microsoft Azure の VPN 接続
S03 企業内システムと Microsoft Azure の VPN 接続
Microsoft Azure Japan
 
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
Hidenori Takeshita
 
Chrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみるChrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみる
Masakazu Muraoka
 

Viewers also liked (20)

Go破壊
Go破壊Go破壊
Go破壊
 
Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012Aws elastic beanstalk-handson-summit2012
Aws elastic beanstalk-handson-summit2012
 
Jawsug elastic beanstalk_150207
Jawsug elastic beanstalk_150207Jawsug elastic beanstalk_150207
Jawsug elastic beanstalk_150207
 
Google App Engine Java 入門
Google App Engine Java 入門Google App Engine Java 入門
Google App Engine Java 入門
 
Web制作会社様向け 知って得するMicrosoft Azureの概要と使い方!
Web制作会社様向け 知って得するMicrosoft Azureの概要と使い方!Web制作会社様向け 知って得するMicrosoft Azureの概要と使い方!
Web制作会社様向け 知って得するMicrosoft Azureの概要と使い方!
 
S94 Microsoft Azure セキュリティについて
S94 Microsoft Azure セキュリティについてS94 Microsoft Azure セキュリティについて
S94 Microsoft Azure セキュリティについて
 
S03 企業内システムと Microsoft Azure の VPN 接続
S03 企業内システムと Microsoft Azure の VPN 接続S03 企業内システムと Microsoft Azure の VPN 接続
S03 企業内システムと Microsoft Azure の VPN 接続
 
Google Compute Engine 入門
Google Compute Engine 入門Google Compute Engine 入門
Google Compute Engine 入門
 
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
Introduction to Vim plugins developed by non-Japanese Vimmer (Japanese version)
 
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
 
Golang, make and robotics #gocon
Golang, make and robotics #goconGolang, make and robotics #gocon
Golang, make and robotics #gocon
 
Go言語と過ごした一週間
Go言語と過ごした一週間Go言語と過ごした一週間
Go言語と過ごした一週間
 
らくちん Go言語
らくちん Go言語らくちん Go言語
らくちん Go言語
 
Chrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみるChrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみる
 
alphawing meets heroku
alphawing meets herokualphawing meets heroku
alphawing meets heroku
 
Go+revel
Go+revelGo+revel
Go+revel
 
Goを知る
Goを知るGoを知る
Goを知る
 
Eureka go 2015_12_12
Eureka go 2015_12_12Eureka go 2015_12_12
Eureka go 2015_12_12
 
Github第8章
Github第8章Github第8章
Github第8章
 
HighBatch
HighBatchHighBatch
HighBatch
 

Similar to Google App Engine/Goを触ってみた

Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)
Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)
Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)
Hiroshi Tsukamoto
 

Similar to Google App Engine/Goを触ってみた (17)

SQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
SQLおじさん(自称)がBigQueryのStandard SQLを使ってみたSQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
SQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
 
プロダクトオーナー/プロダクトオーナーシップ カイワヤ会(出張版)
プロダクトオーナー/プロダクトオーナーシップ カイワヤ会(出張版)プロダクトオーナー/プロダクトオーナーシップ カイワヤ会(出張版)
プロダクトオーナー/プロダクトオーナーシップ カイワヤ会(出張版)
 
Googleサイトの作り方
Googleサイトの作り方Googleサイトの作り方
Googleサイトの作り方
 
ビジョンステートメントで学ぶプロダクトオーナーシップ ~Power of Vision~
ビジョンステートメントで学ぶプロダクトオーナーシップ ~Power of Vision~ビジョンステートメントで学ぶプロダクトオーナーシップ ~Power of Vision~
ビジョンステートメントで学ぶプロダクトオーナーシップ ~Power of Vision~
 
Mashup Awards は 新しい技術を試す 絶好の機会です
Mashup Awards は新しい技術を試す絶好の機会ですMashup Awards は新しい技術を試す絶好の機会です
Mashup Awards は 新しい技術を試す 絶好の機会です
 
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
プロダクトオーナーは育成できるのか? - プロダクトオーナー祭り2016
 
関西におけるコミュニティファーストとイノベーションの現状
関西におけるコミュニティファーストとイノベーションの現状関西におけるコミュニティファーストとイノベーションの現状
関西におけるコミュニティファーストとイノベーションの現状
 
GCPでお手軽IoTに挑戦
GCPでお手軽IoTに挑戦GCPでお手軽IoTに挑戦
GCPでお手軽IoTに挑戦
 
アジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とはアジャイル開発を支えるアーキテクチャ設計とは
アジャイル開発を支えるアーキテクチャ設計とは
 
Agile development-course-advanced-3-4
Agile development-course-advanced-3-4Agile development-course-advanced-3-4
Agile development-course-advanced-3-4
 
Report of Google I/O 2013 Google Cloud Platform
Report of Google I/O 2013 Google Cloud PlatformReport of Google I/O 2013 Google Cloud Platform
Report of Google I/O 2013 Google Cloud Platform
 
開発現場から考える プロジェクトで活躍する 新入社員の育て方とは?
開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?開発現場から考えるプロジェクトで活躍する新入社員の育て方とは?
開発現場から考える プロジェクトで活躍する 新入社員の育て方とは?
 
名古屋アジャイル移動図書館 プロダクトオーナー/プロダクトオーナーシップ ブックトーク会(出張版)
名古屋アジャイル移動図書館 プロダクトオーナー/プロダクトオーナーシップ ブックトーク会(出張版)名古屋アジャイル移動図書館 プロダクトオーナー/プロダクトオーナーシップ ブックトーク会(出張版)
名古屋アジャイル移動図書館 プロダクトオーナー/プロダクトオーナーシップ ブックトーク会(出張版)
 
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
アジャイルと言わないエンタープライズアジャイル導入 - Agile Japan 2016
 
Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)
Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)
Facebook事例&サービス紹介(2010.9.16セミナープレゼン資料)
 
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナーエンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
 
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
今どきのアーキテクチャ設計戦略 - QCon Tokyo 2016
 

Recently uploaded

Recently uploaded (10)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 

Google App Engine/Goを触ってみた

Editor's Notes

  1. こういう面白いものを作っている会社です。
  2. Google Cloud Platformにご興味を持たれた方はGCPUGへご参加下さい。 大阪でも勉強会を開催しています。
  3. おうちハックという名前ですが、
  4. 空き巣はしていません。
  5. おうちにセンサーを取り付けて、その情報をクラウドに飛ばしています。