ฟังก์ชั่นคลาวด์สำหรับ Firebase

Cloud Functions for Firebase เป็นเฟรมเวิร์กแบบไร้เซิร์ฟเวอร์ที่ช่วยให้คุณเรียกใช้โค้ดแบ็กเอนด์ได้โดยอัตโนมัติเพื่อตอบสนองต่อเหตุการณ์ที่ทริกเกอร์โดยเหตุการณ์ในเบื้องหลัง, คำขอ HTTPS, Admin SDK หรืองาน Cloud Scheduler รหัส JavaScript, TypeScript หรือ Python ของคุณถูกจัดเก็บไว้ในโครงสร้างพื้นฐานของ Google Cloud และทำงานในสภาพแวดล้อมที่มีการจัดการ ไม่จำเป็นต้องจัดการและปรับขนาดเซิร์ฟเวอร์ของคุณเอง

ใช้ฟังก์ชั่นคลาวด์ใน Google Cloud แล้วหรือยัง? เรียนรู้เพิ่มเติม เกี่ยวกับวิธีที่ Firebase เข้ากับภาพ

เริ่มต้น ใช้งานกรณีการใช้งาน

ความสามารถที่สำคัญ

ผสานรวมคุณสมบัติ Firebase และเชื่อมต่อ Firebase กับ Google Cloud

ฟังก์ชันที่คุณเขียนสามารถตอบสนองต่อเหตุการณ์ที่สร้างโดยฟีเจอร์ต่างๆ ของ Firebase และ Google Cloud ได้ ตั้งแต่ ทริกเกอร์การตรวจสอบสิทธิ์ Firebase ไปจนถึง ทริกเกอร์ Cloud Storage

ผสานรวมฟีเจอร์ต่างๆ ของ Firebase โดยใช้ Admin SDK ร่วมกับฟังก์ชันคลาวด์ และผสานรวมกับบริการของบุคคลที่สามโดยการเขียน webhooks ของคุณเอง Cloud Functions ย่อขนาดโค้ดสำเร็จรูป ทำให้ใช้ Firebase และ Google Cloud ภายในฟังก์ชันของคุณได้ง่ายขึ้น
การบำรุงรักษาเป็นศูนย์ ปรับใช้โค้ด JavaScript, TypeScript หรือ Python บนเซิร์ฟเวอร์ของเราด้วยคำสั่งเดียวจากบรรทัดคำสั่ง หลังจากนั้น Firebase จะปรับขนาดทรัพยากรการประมวลผลโดยอัตโนมัติเพื่อให้ตรงกับรูปแบบการใช้งานของผู้ใช้ของคุณ คุณไม่ต้องกังวลกับข้อมูลประจำตัว การกำหนดค่าเซิร์ฟเวอร์ การจัดเตรียมเซิร์ฟเวอร์ใหม่ หรือการเลิกใช้งานเซิร์ฟเวอร์เก่า
รักษาตรรกะของคุณให้เป็นส่วนตัวและปลอดภัย ในหลายกรณี นักพัฒนาต้องการควบคุมตรรกะของแอปพลิเคชันบนเซิร์ฟเวอร์เพื่อหลีกเลี่ยงการดัดแปลงในฝั่งไคลเอ็นต์ นอกจากนี้ บางครั้งก็ไม่เป็นที่พึงปรารถนาที่จะอนุญาตให้โค้ดนั้นได้รับการออกแบบทางวิศวกรรมย้อนกลับ Cloud Functions ได้รับการแยกออกจากไคลเอ็นต์โดยสมบูรณ์ ดังนั้นคุณจึงมั่นใจได้ว่าจะเป็นส่วนตัวและดำเนินการตามที่คุณต้องการเสมอ

มันทำงานอย่างไร?

หลังจากที่คุณเขียนและปรับใช้ฟังก์ชันแล้ว เซิร์ฟเวอร์ของ Google จะเริ่มจัดการฟังก์ชันดังกล่าวทันที คุณสามารถเริ่มการทำงานของฟังก์ชันได้โดยตรงด้วยคำขอ HTTP, Admin SDK หรืองานที่กำหนดเวลาไว้ หรือในกรณีของฟังก์ชันพื้นหลัง เซิร์ฟเวอร์ของ Google จะรับฟังเหตุการณ์และเรียกใช้ฟังก์ชันเมื่อมีการทริกเกอร์

เมื่อโหลดเพิ่มขึ้นหรือลดลง Google จะตอบสนองโดยปรับขนาดจำนวนอินสแตนซ์เซิร์ฟเวอร์เสมือนที่จำเป็นต่อการเรียกใช้ฟังก์ชันของคุณอย่างรวดเร็ว แต่ละฟังก์ชันทำงานแยกกัน ในสภาพแวดล้อมของตัวเองและมีการกำหนดค่าของตัวเอง

วงจรชีวิตของฟังก์ชันพื้นหลัง

  1. คุณเขียนโค้ดสำหรับฟังก์ชันใหม่ เลือกผู้ให้บริการเหตุการณ์ (เช่น Cloud Firestore) และกำหนดเงื่อนไขที่ฟังก์ชันควรดำเนินการ
  2. เมื่อคุณปรับใช้ฟังก์ชันของคุณ:
    1. Firebase CLI สร้างไฟล์เก็บ .zip ของโค้ดฟังก์ชัน ซึ่งจากนั้นจะอัปโหลดไปยังที่เก็บข้อมูล Cloud Storage (ขึ้นต้นด้วย gcf-sources ) ก่อนที่ Cloud Functions จะสร้างที่เก็บ Artifact Registry (ชื่อ gcf-artifacts ) ในโปรเจ็กต์ของคุณ
    2. Cloud Build ดึงโค้ดฟังก์ชันและสร้างแหล่งที่มาของฟังก์ชัน คุณสามารถดูบันทึก Cloud Build ได้ใน คอนโซล Google Cloud
    3. อิมเมจคอนเทนเนอร์สำหรับโค้ดฟังก์ชันที่สร้างขึ้นจะถูกอัปโหลดไปยังที่เก็บ Artifact Registry ส่วนตัวในโปรเจ็กต์ของคุณ (ชื่อ gcf-artifacts ) และฟังก์ชันใหม่ของคุณจะเปิดตัวแล้ว
  3. เมื่อผู้ให้บริการเหตุการณ์สร้างเหตุการณ์ที่ตรงกับเงื่อนไขของฟังก์ชัน รหัสจะถูกเรียกใช้
  4. หากฟังก์ชันยุ่งอยู่กับการจัดการเหตุการณ์จำนวนมาก Google จะสร้างอินสแตนซ์เพิ่มเติมเพื่อจัดการงานได้เร็วขึ้น หากฟังก์ชันไม่ได้ใช้งาน อินสแตนซ์จะถูกล้างข้อมูล
  5. เมื่อคุณอัปเดตฟังก์ชันโดยการปรับใช้โค้ดที่อัปเดต อินสแตนซ์สำหรับเวอร์ชันเก่าจะถูกล้างข้อมูลพร้อมกับการสร้างอาร์ติแฟกต์ใน Artifact Registry และแทนที่ด้วยอินสแตนซ์ใหม่
  6. เมื่อคุณลบฟังก์ชัน อินสแตนซ์และไฟล์เก็บถาวร ZIP ทั้งหมดจะถูกล้างข้อมูล พร้อมด้วยอาร์ติแฟกต์บิวด์ที่เกี่ยวข้องใน Artifact Registry การเชื่อมต่อระหว่างฟังก์ชันและผู้จัดกิจกรรมจะถูกลบออก

นอกเหนือจากการฟังเหตุการณ์ที่มีฟังก์ชันพื้นหลังแล้ว คุณยังสามารถเรียกใช้ฟังก์ชันได้โดยตรงด้วยคำขอ HTTP หรือ การโทรจากไคลเอ็นต์ คุณยังสามารถทริกเกอร์ฟังก์ชันตามกำหนด เวลา หรือ จัดคิวฟังก์ชันงาน ผ่าน Admin SDK ได้อีกด้วย

เส้นทางการนำไปปฏิบัติ

ตั้งค่าฟังก์ชั่นคลาวด์ ติดตั้ง Firebase CLI และเริ่มต้นฟังก์ชันคลาวด์ในโปรเจ็กต์ Firebase ของคุณ
เขียนฟังก์ชัน เขียนโค้ด JavaScript, โค้ด TypeScript หรือโค้ด Python เพื่อจัดการเหตุการณ์จากบริการ Firebase, บริการ Google Cloud หรือผู้ให้บริการกิจกรรมอื่นๆ
ฟังก์ชั่นการทดสอบ ใช้ โปรแกรมจำลองในเครื่อง เพื่อทดสอบฟังก์ชันของคุณ
ปรับใช้และตรวจสอบ เปิดใช้การเรียกเก็บเงินสำหรับโปรเจ็กต์ของคุณและทำให้ฟังก์ชันของคุณใช้งานได้โดยใช้ Firebase CLI คุณสามารถใช้ Google Cloud Console เพื่อดูและค้นหาบันทึกของคุณได้

ขั้นตอนถัดไป