Cloud Functions Tokyo Region を試してみた

flatfisher
google-cloud-jp
Published in
3 min readJul 4, 2018

こんにちは、本業や趣味でGCP, Actions on Google, Androidなどを触っている fish です🐟

神楽坂やちまさんの、ほぼ週刊Firebase 18/06/30 #FJUGにも書いてある通り Cloud Functions の東京リージョンが公開されたので、デプロイ方法を紹介したいと思います。

(こちらの機能は現在ベータ版であり予告なく仕様が変更される可能性があることに注意してください。)

前準備

gcloud コマンドの beta を使える状態にしてください。

$ gcloud --version
...
beta 2018.06.22
...

リージョンの確認

$ gcloud beta functions regions list
projects/{project_id}/locations/europe-west1
projects/{project_id}/locations/us-central1
projects/{project_id}/locations/us-east1
projects/{project_id}/locations/asia-northeast1 ← 東京リージョン😁

Hello Tokyo Region! と表示するコードを準備 (index.js)

exports.helloGET = (_, res) => {
res.send('Hello Tokyo Region!');
};

デプロイ

$ gcloud beta functions deploy helloGET --trigger-http --region asia-northeast1

デプロイに成功すると下記のようなURLが返ってきます。

httpsTrigger:
url: https://asia-northeast1-project_id.cloudfunctions.net/helloGET

curl で Hello Tokyo Region! が返ってくること確認しましょう。

$curl https://asia-northeast1-project_id.cloudfunctions.net/helloGETHello Tokyo Region!

GCP コンソール上でも確認することができます。

速度比較

httpstat で us-central1 と速度比較しました。
10回リクエストし一番速度が速かったものをあげています。
(東京からリクエストしています)

asia-northeast1

namelookup:4ms
connect:17ms
pretransfer:108ms
starttransfer:130ms
total:130ms

us-central1

namelookup:4ms
connect:35ms
pretransfer:147ms
starttransfer:329ms
total:329ms

当たり前ですが物理的に距離が近いこともありレスポンスが速かったです。

リージョンは東京以外にも europe-west1, us-central1, us-east1などがありますので要件に応じてリージョンを選択してみてはいかがでしょうか。

--

--