คุณใช้ Cloud Functions ทำอะไรได้บ้าง

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

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

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

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

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

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

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

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

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

ทำความสะอาดและบำรุงรักษาฐานข้อมูล

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

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

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

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

กรณีอื่นๆ เกี่ยวกับการทำความสะอาดฐานข้อมูลและการบำรุงรักษา

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

ทำงานที่หนักหน่วงในระบบคลาวด์แทนแอป

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

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

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

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

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

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

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

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

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

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

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

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