การส่งข้อความตามหัวข้อของ FCM ช่วยให้คุณส่งข้อความไปยังอุปกรณ์หลายเครื่อง ที่เลือกรับหัวข้อใดหัวข้อหนึ่งได้ คุณเขียนข้อความตามหัวข้อได้ตามต้องการ และ FCM จะจัดการการกำหนดเส้นทางและการส่งข้อความไปยัง อุปกรณ์ที่เหมาะสมอย่างน่าเชื่อถือ
ประเด็นสำคัญเกี่ยวกับการส่งข้อความตามหัวข้อ
- เหมาะที่สุดสำหรับข้อมูลที่เปิดเผยต่อสาธารณะ เช่น การแจ้งเตือนสภาพอากาศ
- ข้อความตามหัวข้อได้รับการเพิ่มประสิทธิภาพให้มีปริมาณงานสูงแทนที่จะมีเวลาในการตอบสนองต่ำ หากต้องการส่งข้อความไปยังอุปกรณ์เครื่องเดียวหรือกลุ่มเล็กๆ อย่างรวดเร็ว และปลอดภัย ให้กำหนดเป้าหมายข้อความเป็นโทเค็นการลงทะเบียน แทนหัวข้อ
โควต้าและขีดจำกัด
การส่งข้อความตามหัวข้อรองรับการสมัครใช้บริการได้ไม่จำกัดสำหรับแต่ละหัวข้อ อย่างไรก็ตาม FCM จะบังคับใช้ขีดจำกัดในส่วนต่อไปนี้
- อินสแตนซ์ของแอป 1 รายการสมัครใช้บริการหัวข้อได้ไม่เกิน 2,000 หัวข้อ
- หากคุณใช้ การสมัครใช้บริการแบบเป็นชุด เพื่อสมัครใช้บริการอินสแตนซ์ของแอป คำขอแต่ละรายการจะจำกัดไว้ที่ 1, 000 อินสแตนซ์ของแอป
การควบคุมการสมัครใช้บริการ
อัตราการเพิ่มหรือนำการสมัครใช้บริการหัวข้อออกจะจำกัดไว้ที่ 3,000 QPS ต่อโปรเจ็กต์
ระบบจะจำกัดอัตราความถี่ของการสมัครใช้บริการใหม่ต่อโปรเจ็กต์ หากคุณส่งคำขอสมัครใช้บริการมากเกินไปในระยะเวลาอันสั้น เซิร์ฟเวอร์จะตอบกลับด้วย ("QUOTA_EXCEEDED")การตอบกลับFCM429 RESOURCE_EXHAUSTED ลองอีกครั้งโดยใช้ Exponential Backoff
การควบคุมการกระจายข้อความ
การกระจายข้อความคือกระบวนการส่งข้อความไปยังอุปกรณ์หลายเครื่อง เช่น เมื่อคุณกำหนดเป้าหมายเป็นหัวข้อและกลุ่ม หรือเมื่อคุณใช้ เครื่องมือเขียนข้อความแจ้งเตือน เพื่อกำหนดเป้าหมายเป็นกลุ่มเป้าหมายหรือกลุ่มผู้ใช้
การกระจายข้อความไม่ได้เกิดขึ้นทันที ดังนั้นบางครั้งคุณอาจมีการกระจายข้อความหลายรายการที่กำลังดำเนินการอยู่พร้อมกัน เราจำกัดจำนวนการกระจายข้อความพร้อมกันต่อโปรเจ็กต์ไว้ที่ 1,000 รายการ หลังจากนั้น เราอาจปฏิเสธคำขอการกระจายข้อความเพิ่มเติมหรือเลื่อนการกระจายข้อความของคำขอจนกว่าการกระจายข้อความบางรายการที่กำลังดำเนินการอยู่จะเสร็จสมบูรณ์
อัตราการกระจายข้อความที่ทำได้จริงจะได้รับผลกระทบจากจำนวนโปรเจ็กต์ที่ขอการกระจายข้อความในเวลาเดียวกัน อัตราการกระจายข้อความ 10,000 QPS สำหรับโปรเจ็กต์แต่ละรายการไม่ใช่เรื่องแปลก แต่ตัวเลขดังกล่าวไม่ได้รับประกันและเป็นผลมาจากภาระงานทั้งหมดในระบบ โปรดทราบว่าความจุการกระจายข้อความที่มีอยู่จะแบ่งให้กับโปรเจ็กต์ต่างๆ ไม่ใช่คำขอการกระจายข้อความ ดังนั้น หากโปรเจ็กต์ของคุณมีการกระจายข้อความ 2 รายการที่กำลังดำเนินการอยู่ การกระจายข้อความแต่ละรายการจะเห็นอัตราการกระจายข้อความที่มีอยู่เพียงครึ่งเดียว วิธีที่แนะนำในการเพิ่มความเร็วการกระจายข้อความให้สูงสุดคือการมีการกระจายข้อความที่ใช้งานอยู่เพียงรายการเดียวที่กำลังดำเนินการอยู่พร้อมกัน
ขั้นตอนถัดไป
- ดูวิธีจัดการการสมัครใช้บริการหัวข้อ โดยใช้ Admin SDK หรือจากแอปไคลเอ็นต์
- ดูวิธีส่งข้อความไปยังหัวข้อ โดยใช้ Admin SDK หรือ FCM v1 HTTP API