
วันนี้ว่าง ๆ ช่วงรอ speaker ขึ้นพูดในงาน Beta Conference
เลยลองเขียนและ deploy Google Cloud Function ด้วยภาษา Go นิดหน่อย
ได้ยินมานานว่าสนับสนุน Go 1.11 แล้ว
เวลามีน้อย มาลองกันดีกว่า
ก่อนอื่นไปเปิด Account ที่ Google Cloud ก่อน
ช่วงนี้ได้ฟรี 300 USD หรือ 1 ปี ชิว ๆ ไปครับ
เริ่มต้นด้วยการพัฒนา Function ง่าย ๆ ด้วยภาษา Go
ซึ่งมี function 2 รูปแบบคือ
- HTTP function คือ function ที่เรียกผ่าน HTTP นั่นเอง
- Background function คือ function ที่จะถูกเรียกเมื่อเกิด event ขึ้นมา
โดยตัวอย่างที่เลือกเขียนคือ HTTP function
คำอธิบาย
ก็ไม่มีอะไรมาก ตามชื่อเลยคือ function เป็นแบบ public ด้วย
เป็น function ที่รับ request และ response ผ่าน net/http package เลย
ต่อมาทำการ deploy ไปยัง Google Cloud Function กัน
ตามจริงสามารถทดสอบบน localhost หรือเครื่องเราได้ก่อนนะ !!
แต่แวลามีน้อยก็ deploy ผ่าน gcloud command line กันเลย
$gcloud functions deploy hello --entry-point HelloWorld --runtime go111 --trigger-http
คำอธิบาย
- Entrypoint คือ ชื่อ function
- Runtime ในตอนนี้สนับสนุน Go version 1.11
- กำหนดเป็น HTTP function ด้วย trigger-http
ผลการทำงานเป็นดังนี้
ลืมไปหนึ่งเรื่องคือ
Google Cloud Function จะสนับสนุนเฉพาะในบาง region เท่านั้นคือ
- us-central1
- us-east1
- europe-west1
- asia-northeast
เมื่อทำการ deploy เรียบร้อยแล้ว
ซึ่งจะใช้เวลานานนิดหน่อย สามารถเข้าไปดูผลที่ Google Cloud Console ได้เลย
แจ้งรายละเอียดพร้อม URL ของการเข้าใช้งาน function มาให้เรียบร้อย

มาลองทำการทำ performance test ตัว function ที่ deploy กัน
ไหน ๆ ก็เขียนด้วยภาษา Go แล้ว
เครื่องมือที่ทดสอบก็ต้องเขียนด้วยภาษา Go ด้วย
จึงเลือกใช้ Hey ก็แล้วกัน
ยิงดีกว่า
ผลการทำงานก็ดูดีเลยนะ
ลองไปดูผลการทำงานที่ Dashboard ของ function ใน google cloud ได้เลย

ถึงตรงนี้ก็พบว่า มันเขียนและ deploy ง่ายดีนะ
ไว้ต้องเอางานจริงมา deploy กันบ้าง
มาเริ่มเรียนรู้กันผ่าน Quick Starter
ขอให้สนุกกับการ coding ครับ