คุณสามารถทำอะไรกับฟังก์ชั่นคลาวด์ได้บ้าง?

Cloud Functions ช่วยให้นักพัฒนาสามารถเข้าถึงกิจกรรม Firebase และ Google Cloud พร้อมด้วยพลังการประมวลผลที่ปรับขนาดได้เพื่อเรียกใช้โค้ดเพื่อตอบสนองต่อเหตุการณ์เหล่านั้น แม้ว่าแอป Firebase จะใช้ฟังก์ชันคลาวด์ในรูปแบบที่ไม่ซ้ำใครเพื่อตอบสนองความต้องการเฉพาะของตน แต่กรณีการใช้งานทั่วไปอาจอยู่ในพื้นที่เหล่านี้:

ตรวจสอบกรณีการใช้งานและตัวอย่างสำหรับแต่ละหมวดหมู่ที่คุณสนใจ จากนั้นไปที่บทช่วยสอน เริ่มต้นใช้งาน ของเรา หรือคำแนะนำวิธีการเฉพาะสำหรับ เหตุการณ์การตรวจสอบสิทธิ์ เหตุการณ์การวิเคราะห์ และอื่นๆ

แจ้งเตือนผู้ใช้เมื่อมีบางสิ่งที่น่าสนใจเกิดขึ้น

นักพัฒนาสามารถใช้ฟังก์ชันคลาวด์เพื่อให้ผู้ใช้มีส่วนร่วมและอัปเดตข้อมูลที่เกี่ยวข้องกับแอปได้ ตัวอย่างเช่น พิจารณาแอปที่อนุญาตให้ผู้ใช้ติดตามกิจกรรมของกันและกันในแอป แต่ละครั้งที่ผู้ใช้เพิ่มตนเองเป็นผู้ติดตามของผู้ใช้รายอื่น การเขียนจะเกิดขึ้นในฐานข้อมูลเรียลไทม์ จากนั้นเหตุการณ์การเขียนนี้อาจเรียกใช้ฟังก์ชันเพื่อสร้างการแจ้งเตือน Firebase Cloud Messaging (FCM) เพื่อแจ้งให้ผู้ใช้ที่เหมาะสมทราบว่าพวกเขาได้รับผู้ติดตามใหม่

แผนภาพแสดงขั้นตอนของแอปที่อธิบายไว้ด้านล่าง

  1. ฟังก์ชันนี้ทริกเกอร์เมื่อเขียนไปยังพาธฐานข้อมูลเรียลไทม์ที่จัดเก็บผู้ติดตาม
  2. ฟังก์ชั่นเขียนข้อความเพื่อส่งผ่าน FCM
  3. FCM ส่งข้อความแจ้งเตือนไปยังอุปกรณ์ของผู้ใช้

หากต้องการตรวจสอบโค้ดการทำงาน โปรดดูโค้ดตัวอย่างใน GitHub:

กรณีการใช้งานการแจ้งเตือนอื่นๆ ที่น่าสนใจ

  • ส่งอีเมลยืนยันไปยังผู้ใช้ที่สมัครรับจดหมายข่าว
  • ส่งอีเมลต้อนรับเมื่อผู้ใช้สมัครเสร็จสิ้น
  • ส่ง SMS ยืนยันเมื่อผู้ใช้สร้างบัญชีใหม่

ดำเนินการฆ่าเชื้อและบำรุงรักษาฐานข้อมูล

ด้วยการจัดการเหตุการณ์ฐานข้อมูล Cloud Functions คุณสามารถแก้ไขฐานข้อมูลเรียลไทม์หรือ Cloud Firestore เพื่อตอบสนองต่อพฤติกรรมของผู้ใช้ ทำให้ระบบอยู่ในสถานะที่คุณต้องการ ตัวอย่างเช่น คุณสามารถตรวจสอบเหตุการณ์การเขียนและเปลี่ยนรูปแบบ (เช่น เปลี่ยนเป็นตัวพิมพ์ใหญ่ทั้งหมด) ของสตริงบางสตริงในข้อความของผู้ใช้ นี่คือวิธีการทำงาน:

แผนภาพแสดงขั้นตอนของแอปที่อธิบายไว้ด้านล่าง

  1. ตัวจัดการเหตุการณ์ฐานข้อมูลของฟังก์ชันจะรับฟังเหตุการณ์การเขียนบนเส้นทางเฉพาะ และดึงข้อมูลเหตุการณ์ที่มีข้อความของข้อความ
  2. ฟังก์ชันจะประมวลผลข้อความเพื่อเปลี่ยนสตริงเป็นตัวพิมพ์ใหญ่
  3. ฟังก์ชันจะเขียนข้อความที่อัปเดตกลับไปยังฐานข้อมูล

หากต้องการตรวจสอบโค้ดการทำงาน โปรดดูโค้ดตัวอย่างใน GitHub:

กรณีการใช้งานการฆ่าเชื้อฐานข้อมูลและการบำรุงรักษาอื่นๆ

  • ล้างเนื้อหาของผู้ใช้ที่ถูกลบออกจากฐานข้อมูลเรียลไทม์
  • จำกัดจำนวนโหนดย่อยในฐานข้อมูล Firebase
  • ติดตามจำนวนองค์ประกอบในรายการฐานข้อมูลเรียลไทม์
  • คัดลอกข้อมูลจากฐานข้อมูลเรียลไทม์ไปยัง Google Cloud BigQuery
  • แปลงข้อความเป็นอิโมจิ
  • จัดการเมตาดาต้าที่คำนวณสำหรับบันทึกฐานข้อมูล

ดำเนินงานที่เข้มข้นในระบบคลาวด์แทนที่จะดำเนินการในแอปของคุณ

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

แผนภาพแสดงขั้นตอนของแอปที่อธิบายไว้ด้านล่าง

  1. ฟังก์ชันทริกเกอร์เมื่อมีการอัปโหลดไฟล์รูปภาพไปยัง Cloud Storage
  2. ฟังก์ชันนี้จะดาวน์โหลดรูปภาพและสร้างเวอร์ชันภาพขนาดย่อของรูปภาพนั้น
  3. ฟังก์ชันจะเขียนตำแหน่งรูปขนาดย่อนั้นลงในฐานข้อมูล เพื่อให้แอปไคลเอ็นต์สามารถค้นหาและใช้งานได้
  4. ฟังก์ชันจะอัปโหลดภาพขนาดย่อกลับไปยัง Cloud Storage ในตำแหน่งใหม่
  5. แอปจะดาวน์โหลดลิงก์ภาพขนาดย่อ

หากต้องการดูตัวอย่างการประมวลผลรูปภาพแบบทีละขั้น โปรดดูคำแนะนำในการ จัดการเหตุการณ์ Cloud Storage

ตัวอย่างอื่นๆ ของงานแบตช์ในระบบคลาวด์ Firebase

  • ลบบัญชี Firebase ที่ไม่ได้ใช้ Node.js | เป็นระยะๆ หลาม
  • สำรองรูปภาพที่อัปโหลดโดยอัตโนมัติ Node.js | หลาม
  • ส่งอีเมลจำนวนมากถึงผู้ใช้
  • รวบรวมและสรุปข้อมูลเป็นระยะๆ
  • ประมวลผลคิวงานที่ค้างอยู่

ผสานรวมกับบริการและ API ของบุคคลที่สาม

ฟังก์ชันคลาวด์สามารถช่วยให้แอปของคุณทำงานได้ดีขึ้นกับบริการอื่นๆ โดยการเรียกและเปิดเผย API ของเว็บ ตัวอย่างเช่น แอปที่ใช้สำหรับการทำงานร่วมกันในการพัฒนาสามารถโพสต์ GitHub ให้กับห้องสนทนาของเวิร์กกรุ๊ปได้

แผนภาพแสดงขั้นตอนของแอปที่อธิบายไว้ด้านล่าง

  1. ผู้ใช้พุชคอมมิตกับ repo GitHub
  2. ฟังก์ชัน HTTPS ทริกเกอร์ผ่าน GitHub webhook API
  3. ฟังก์ชันส่งการแจ้งเตือนการคอมมิตไปยังช่อง Slack ของทีม

วิธีอื่นๆ ในการผสานรวมกับบริการและ API ของบุคคลที่สาม

  • ใช้ Google Cloud Vision API เพื่อวิเคราะห์และแท็กรูปภาพที่อัปโหลด
  • แปลข้อความโดยใช้ Google Translate
  • ใช้ การรับรองความถูกต้องแบบกำหนดเอง เพื่อลงชื่อเข้าใช้ผู้ใช้
  • ส่งคำขอไปยัง webhook บนการเขียนฐานข้อมูลเรียลไทม์
  • เปิดใช้งานการค้นหาข้อความแบบเต็มในองค์ประกอบฐานข้อมูลเรียลไทม์
  • ประมวลผลการชำระเงินจากผู้ใช้
  • สร้างการตอบกลับอัตโนมัติต่อการโทรและข้อความ SMS
  • สร้างแชทบอทโดยใช้ Google Assistant