ไม่ว่าคุณจะเพิ่งเริ่มพัฒนาแอปหรือมีแอปเวอร์ชันสมบูรณ์ที่พร้อมใช้งานจริง คุณก็ควรทำความเข้าใจค่าใช้จ่ายและวิธีหลีกเลี่ยงค่าใช้จ่ายที่ไม่คาดคิด
หากยังไม่ได้ดู โปรดดูแพ็กเกจราคาของ 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 และ Google Cloud จะไม่ปิดบริการและการใช้งานตามงบประมาณและเกณฑ์ของคุณ เนื่องจากแม้ว่าคุณอาจมีข้อบกพร่องในแอป ที่ทำให้ค่าใช้จ่ายเพิ่มขึ้น แต่คุณก็อาจเพียงแค่ประสบกับการเติบโตในเชิงบวกของแอปโดยไม่คาดคิด คุณคงไม่ต้องการให้แอปปิดตัวลงโดยไม่คาดคิด ในเวลาที่คุณต้องการให้แอปทำงานมากที่สุด
คุณอาจมีการแจ้งเตือนงบประมาณอยู่แล้วหากเพิ่งอัปเกรดเป็นแพ็กเกจราคา Blaze แต่หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับการแจ้งเตือนงบประมาณ ตั้งค่าการแจ้งเตือนใหม่ หรือแก้ไขการแจ้งเตือนที่มีอยู่ ส่วนนี้เหมาะสำหรับคุณ
ตั้งงบประมาณและการแจ้งเตือนงบประมาณพื้นฐาน
ส่วนนี้อธิบายงบประมาณและการแจ้งเตือนงบประมาณในระดับสูงโดยมี บริบทของ Firebase โปรดดูข้อมูลโดยละเอียดที่หัวข้อ ตั้งค่าการแจ้งเตือนงบประมาณ ในเอกสารประกอบของ Google Cloud
วิธีตั้งงบประมาณและการแจ้งเตือนงบประมาณพื้นฐานมีดังนี้
ไปที่การตั้งค่างบประมาณโดยทำดังนี้
เข้าถึงโปรเจ็กต์ในFirebaseคอนโซล แล้วไปที่หน้าการใช้งานและการเรียกเก็บเงิน > รายละเอียดและการตั้งค่า
ในส่วนงบประมาณและการแจ้งเตือน ให้คลิกสร้างงบประมาณแรก ซึ่งจะนำคุณไปยังหน้างบประมาณและการแจ้งเตือนในCloudคอนโซล
โปรดทราบว่าหากตั้งงบประมาณไว้แล้ว คุณจะเห็นงบประมาณที่นี่ แทนลิงก์ "สร้างงบประมาณแรก"
ทําตามขั้นตอนต่อไปนี้เพื่อตั้งค่างบประมาณและการแจ้งเตือนงบประมาณทางอีเมล
เลือกงบประมาณที่มีอยู่หรือสร้างงบประมาณใหม่
ตั้งชื่อที่สื่อความหมายให้งบประมาณ
กำหนดขอบเขตสำหรับการแจ้งเตือนงบประมาณ รวมถึงโปรเจ็กต์และ บริการที่ต้องการให้การแจ้งเตือนงบประมาณมีผล คุณอาจต้องการ เลือกบริการทั้งหมดเมื่อเริ่มใช้การแจ้งเตือนงบประมาณ
ตั้งค่าจํานวนเงิน > ประเภทงบประมาณโดยใช้ตัวเลือกใดตัวเลือกหนึ่งต่อไปนี้
จำนวนเงินที่กำหนด - ใช้ประเภทนี้เมื่อคุณเพิ่งเริ่มต้นหรือทดสอบแอป
จำนวนเงินเท่ากับที่โปรเจ็กต์ของคุณใช้จ่ายในเดือนที่แล้ว – ใช้ประเภทนี้เมื่อแอปของคุณเติบโตอย่างต่อเนื่องและคุณไม่ต้องการ อัปเดตจำนวนงบประมาณทุกเดือน
ตั้งค่าการแจ้งเตือนเปอร์เซ็นต์ของงบประมาณ
สำหรับการทดสอบครั้งแรก ให้ลองใช้เปอร์เซ็นต์ต่างๆ เช่น 1%, 2%, 5% และ 50% ของจริง
สําหรับแอปเวอร์ชันที่ใช้งานจริง ให้ลองใช้เปอร์เซ็นต์สําคัญ เช่น 50% และ 100% ของจริง รวมถึง 150% ของคาดการณ์
ตั้งค่าผู้ที่ควรได้รับอีเมล
โดยค่าเริ่มต้น ทุกคนที่มีสิทธิ์ในการเรียกเก็บเงินที่เหมาะสมจะได้รับ อีเมลแจ้งเตือน (โดยค่าเริ่มต้น ผู้ดูแลระบบบัญชีสำหรับการเรียกเก็บเงินและ ผู้ใช้บัญชีสำหรับการเรียกเก็บเงินในบัญชี Cloud Billing ที่เชื่อมโยง)
นอกจากนี้ คุณยังส่งอีเมลถึงคนอื่นๆ ในทีมได้ด้วย ซึ่งต้องCloud Monitoringสร้าง Workspace แล้วเพิ่มช่องทางการแจ้งเตือนทางอีเมลลงในส่วนการแจ้งเตือนของ Workspace ดูข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่านี้ได้ที่ตั้งค่าการแจ้งเตือนและการเรียกเก็บเงินขั้นสูง
หากตั้งค่าการแจ้งเตือนสำหรับเปอร์เซ็นต์ของงบประมาณที่ต่ำ (เช่น 1%) คุณควรได้รับอีเมลภายใน 2-3 ชั่วโมงหรือ 2-3 วันเพื่อแจ้งให้ทราบ ว่าโปรเจ็กต์ของคุณถึงเกณฑ์ดังกล่าวแล้ว
ขั้นตอนถัดไป
ลองใช้การแจ้งเตือนงบประมาณเพื่อปิดใช้ Cloud Billing ในโปรเจ็กต์โดยอัตโนมัติ
ไปที่ ตั้งค่าการแจ้งเตือนและการตรรกะการเรียกเก็บเงินขั้นสูง เพื่อดูวิธีทำสิ่งต่อไปนี้
ใช้ Cloud Monitoring เพื่อสร้างการแจ้งเตือนที่ซับซ้อนมากขึ้นสำหรับการเรียกเก็บเงิน และการใช้งาน รวมถึงการแจ้งเตือนที่กำหนดเองซึ่งส่งการแจ้งเตือนไปยังสื่ออื่นๆ เช่น Slack
สร้างตรรกะการเรียกเก็บเงินเพิ่มเติมตาม Google Cloud Pub/Sub