หลีกเลี่ยงการเรียกเก็บเงินที่ไม่คาดคิด

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

หากยังไม่ได้ทำ โปรดดูแพ็กเกจราคาของ Firebase เพื่อทำความเข้าใจวิธีการเรียกเก็บเงิน ของ สำหรับ Firebase

หน้านี้จะแนะนำคุณเกี่ยวกับแง่มุมที่สำคัญในการทำความเข้าใจและตรวจสอบระดับการใช้งานและการใช้จ่าย ซึ่งรวมถึงสิ่งต่อไปนี้


ทดสอบโค้ด

การทดสอบโค้ดก่อนที่จะนำไปใช้งานจริงเป็นความคิดที่ดีด้วยเหตุผลหลายประการ เช่น การตรวจพบข้อผิดพลาดที่อาจทำให้คุณเสียเงินจำนวนมาก เมื่อสร้างโครงสร้างพื้นฐานสำหรับแอป เราขอแนะนำอย่างยิ่งให้ ทดสอบในเครื่องก่อนโดยใช้ Firebase Local Emulator Suite

Local Emulator Suite ช่วยให้คุณเรียกใช้อินสแตนซ์ของ Cloud Functions, Cloud Firestore, Realtime Database และอื่นๆ ทั้งหมดในเครื่องเดสก์ท็อป ซึ่งไม่เพียงแต่ช่วยให้คุณทำซ้ำฟังก์ชันการทำงานใหม่ๆ ได้ง่ายขึ้น — โดยเฉพาะอย่างยิ่ง Cloud Functions — แต่ยังช่วยให้มั่นใจได้ว่าคุณจะไม่เสียค่าใช้จ่าย Firebase ที่อาจเกิดขึ้นจากการทดสอบกับบริการในเวอร์ชันที่ใช้งานจริง

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

  • ลืมเพิ่มขีดจำกัดลงในคำค้นหาฐานข้อมูลที่มีผลลัพธ์นับล้านรายการ

  • การรวมกันของ Cloud Functions ที่ทำให้เกิดปริมาณงานแบบ Fan-Out มากเกินไป หรือแม้แต่ลูปไม่สิ้นสุด



ดูระดับการใช้งานและการใช้จ่าย

คุณต้องทราบลักษณะการใช้งานปกติของแอปและตรวจสอบว่าการใช้งานยังอยู่ในเกณฑ์ที่คุณกำหนด

ดูการใช้งานผลิตภัณฑ์แต่ละรายการ

คุณสามารถดูการใช้งานผลิตภัณฑ์แต่ละรายการได้ในแท็บ "การใช้งาน" สำหรับผลิตภัณฑ์หลายรายการใน คอนโซล Firebase

  • คุณสามารถดูช่วงวันที่ที่เฉพาะเจาะจงในแดชบอร์ดเหล่านี้

  • แดชบอร์ดระดับสินค้าพร้อมให้บริการสำหรับ Authentication และผลิตภัณฑ์โครงสร้างพื้นฐานทั้งหมด ได้แก่ Realtime Database, Cloud Firestore, Cloud Storage, Cloud Functions, และ Hosting

ดูการใช้งานโดยรวมของโปรเจ็กต์

คุณสามารถดูการใช้งานโดยรวมของโปรเจ็กต์ได้ใน แดชบอร์ด การตั้งค่า > การใช้งานและการเรียกเก็บเงิน ของคอนโซลFirebase

  • คุณสามารถดูการใช้งานรายเดือนและระดับการใช้งานเทียบกับโควต้าการใช้งานแบบไม่มีค่าใช้จ่ายที่จัดสรรไว้

  • คลิกผลิตภัณฑ์ใดก็ได้เพื่อดูข้อมูลสรุปการใช้งานรายวันและข้อมูลการใช้งานเทียบกับโควต้าการใช้งานแบบไม่มีค่าใช้จ่ายที่จัดสรรไว้

โปรดทราบว่าผลิตภัณฑ์แต่ละรายการมีโควต้าการใช้งานที่แตกต่างกันและมีระยะเวลาที่แตกต่างกันด้วย เช่น

  • ระบบจะคำนวณการใช้งาน Cloud Firestore และ Cloud Storage เป็นรายวัน

  • Cloud Functions ระบบจะคำนวณการใช้งานเป็นรายเดือน



ตั้งงบประมาณ

หลีกเลี่ยงรายจ่ายที่ไม่คาดคิดในใบเรียกเก็บเงินโดยการสร้างงบประมาณใน Google Cloud Billingแล้วตั้งค่า การแจ้งเตือนงบประมาณ และ ขีดจำกัดการใช้จ่ายงบประมาณ โดยเฉพาะ

  • งบประมาณ คือจำนวนเงินทั่วไปที่คุณวางแผนจะใช้จ่ายในแต่ละเดือน

  • การแจ้งเตือนงบประมาณ คือการแจ้งเตือนทางอีเมลที่ส่งถึงทีมของคุณหากโปรเจ็กต์ใช้จ่ายเกินเกณฑ์ที่กำหนด

  • ขีดจำกัดการใช้จ่ายงบประมาณ จะหยุดบริการที่เกี่ยวข้องชั่วคราวหากโปรเจ็กต์ใช้จ่ายเกินงบประมาณที่ตั้งไว้สำหรับบริการนั้น ปัจจุบันขีดจำกัดการใช้จ่ายมีให้บริการสำหรับบางบริการเท่านั้น

คอนโซล Firebase จะแจ้งให้คุณตั้งค่าการแจ้งเตือนงบประมาณโดยอัตโนมัติเมื่อ คุณอัปเกรดเป็นแพ็กเกจราคา Blaze

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

อย่างไรก็ตาม โปรดทราบว่าหากคุณใช้ผลิตภัณฑ์ที่รองรับ ขีดจำกัดการใช้จ่ายงบประมาณ คุณสามารถตั้งค่าขีดจำกัดการใช้จ่าย ตามงบประมาณด้วยตนเองได้ และ Cloud Billing จะหยุดบริการที่เกี่ยวข้องชั่วคราวหาก โปรเจ็กต์ใช้จ่ายเกินงบประมาณที่ตั้งไว้สำหรับบริการนั้น

ตั้งงบประมาณและการแจ้งเตือนงบประมาณพื้นฐาน

ส่วนนี้จะอธิบายงบประมาณและการแจ้งเตือนงบประมาณในระดับสูงโดยอิงตามบริบทของ Firebase โปรดดูข้อมูลโดยละเอียดในหัวข้อ ตั้งค่าการแจ้งเตือนงบประมาณ ในเอกสารประกอบGoogle Cloud

วิธีตั้งงบประมาณและการแจ้งเตือนงบประมาณพื้นฐานมีดังนี้

  1. ตรวจสอบว่าคุณมีสิทธิ์เข้าถึงที่เหมาะสม หากต้องการตั้งงบประมาณหรือการแจ้งเตือนงบประมาณ คุณต้องเป็นเจ้าของบัญชีที่เชื่อมโยง Cloud Billing

  2. ไปที่การตั้งค่าการแจ้งเตือนงบประมาณโดยทำดังนี้

    1. เข้าถึงโปรเจ็กต์ใน Firebase คอนโซล แล้วไปที่หน้า การใช้งานและการเรียกเก็บเงิน > รายละเอียดและการตั้งค่า

    2. ในส่วนงบประมาณและการแจ้งเตือน ให้คลิกสร้างงบประมาณแรก ระบบจะนำคุณไปยังหน้า งบประมาณและการแจ้งเตือน ใน Cloudคอนโซล

      โปรดทราบว่าหากคุณตั้งงบประมาณไว้แล้ว คุณจะเห็นงบประมาณที่ตั้งไว้ที่นี่แทนลิงก์ "สร้างงบประมาณแรก"

  3. ทำตามขั้นตอนต่อไปนี้เพื่อตั้งงบประมาณและการแจ้งเตือนงบประมาณทางอีเมล

    1. เลือกงบประมาณที่มีอยู่หรือสร้างงบประมาณใหม่

    2. ตั้งชื่อที่สื่อความหมายให้กับงบประมาณ

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

    4. ตั้งค่า จำนวนเงิน > ประเภทงบประมาณ โดยใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้

      • จำนวนเงินที่กำหนด \- ใช้ตัวเลือกนี้เมื่อคุณเพิ่งเริ่มต้นหรือทดสอบแอป

      • จำนวนเงินเท่ากับที่โปรเจ็กต์ใช้จ่ายไปเมื่อเดือนที่แล้ว \- ใช้ตัวเลือกนี้เมื่อแอปมีการเติบโตอย่างต่อเนื่องและคุณไม่ต้องการอัปเดตจำนวนเงินงบประมาณทุกเดือน

    5. ตั้งค่าการแจ้งเตือน เปอร์เซ็นต์ของงบประมาณ

      • สำหรับการทดสอบเบื้องต้น ให้ลองใช้เปอร์เซ็นต์ต่างๆ เช่น 1%, 2%, 5% และ 50% ของ จำนวนเงินที่ใช้จ่ายจริง

      • สำหรับแอปเวอร์ชันที่ใช้งานจริง ให้ลองใช้เปอร์เซ็นต์สำคัญๆ เช่น 50% และ 100% ของ จำนวนเงินที่ใช้จ่ายจริง รวมถึง 150% ของ จำนวนเงินที่คาดการณ์ไว้

    6. ตั้งค่าผู้ที่ควรได้รับอีเมล

      • โดยค่าเริ่มต้น ทุกคนที่มีสิทธิ์เข้าถึงการเรียกเก็บเงินที่เหมาะสมจะได้รับอีเมลแจ้งเตือน (โดยค่าเริ่มต้น ผู้ดูแลระบบบัญชีสำหรับการเรียกเก็บเงินและ ผู้ใช้บัญชีสำหรับการเรียกเก็บเงินในบัญชีCloud Billingที่เชื่อมโยง)

      • นอกจากนี้ คุณยังส่งอีเมลถึงคนอื่นๆ ในทีมได้ด้วย ซึ่งต้องสร้างพื้นที่ทำงาน Cloud Monitoring แล้วเพิ่มช่องทางการแจ้งเตือนทางอีเมลลงในส่วน การแจ้งเตือน ของพื้นที่ทำงาน ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่านี้ได้ที่ หัวข้อตั้งค่าการแจ้งเตือนและการใช้ตรรกะขั้นสูงสำหรับการเรียกเก็บเงิน

หากคุณตั้งค่าการแจ้งเตือนสำหรับ เปอร์เซ็นต์ของงบประมาณ ที่ต่ำ (เช่น 1%) คุณควรได้รับอีเมลภายใน 2-3 ชั่วโมงหรือ 2-3 วันเพื่อแจ้งให้ทราบว่าโปรเจ็กต์ของคุณใช้จ่ายถึงเกณฑ์ดังกล่าวแล้ว

ตั้งค่าขีดจำกัดการใช้จ่ายงบประมาณ

ปัจจุบันขีดจำกัดการใช้จ่ายงบประมาณพร้อมให้ใช้งานกับผลิตภัณฑ์ Firebase ต่อไปนี้

  • Firebase AI Logic: ตั้งค่าขีดจำกัดการใช้จ่ายสำหรับผู้ให้บริการ Gemini API ที่คุณเลือก: Gemini Developer API หรือ Agent Platform Gemini API (formerly Vertex AI).

  • Firebase App Hosting: ตั้งค่าขีดจำกัดการใช้จ่ายสำหรับบริการ Cloud Run ที่เกี่ยวข้อง

  • Cloud Functions for Firebase: ตั้งค่าขีดจำกัดค่าใช้จ่ายสำหรับบริการ Cloud Run functions ที่เกี่ยวข้อง

  • Firebase Extensions: ตั้งค่าขีดจำกัดค่าใช้จ่ายสำหรับบริการ Cloud Run functions ที่เกี่ยวข้อง

ดูข้อมูลเพิ่มเติมเกี่ยวกับ การจัดการขีดจำกัดค่าใช้จ่าย ในเอกสารประกอบCloud Billing

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