Google is committed to advancing racial equity for Black communities. See how.

ขีด จำกัด อัตราข้อมูล

เราต้องการให้นักพัฒนาสร้างประสบการณ์ผู้ใช้ที่น่าสนใจ แต่เรายังต้องการให้บริการและอุปกรณ์ Nest พร้อมใช้งานสำหรับผู้ใช้เสมอ ผลิตภัณฑ์ที่ส่งคำขอจำนวนมากในช่วงเวลาที่กำหนดอาจส่งผลต่อบริการและความพร้อมใช้งานของอุปกรณ์ เราจึงใช้การจำกัดอัตรา การจำกัดอัตราจะจำกัดจำนวนการเรียก API สำหรับช่วงเวลาที่กำหนด

ประเภทของข้อจำกัดอัตรา

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

ต่ออุปกรณ์/ขีดจำกัดโครงสร้าง

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

ต่อขีด จำกัด โทเค็นการเข้าถึง

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

สำหรับการโทรแบบสตรีม REST และ REST โทเค็นเพื่อการเข้าถึงแต่ละรายการมีจำนวนการโทรที่จำกัด ขีดจำกัดอัตราข้อมูลใช้กับการอ่าน/เขียนการโทรผ่าน REST และในการเรียกอ่านผ่านการสตรีม REST เพื่อหลีกเลี่ยงข้อผิดพลาด เราขอแนะนำให้คุณจำกัดคำขอให้โทรหนึ่งครั้งต่อนาที สูงสุด

การตอบสนองข้อผิดพลาด

เมื่อใช้ REST คุณจะได้รับรหัสการตอบสนองของ 429 มากเกินไปร้องขอ

การจัดการ 307 เปลี่ยนเส้นทาง

เมื่อทำ REST สายผลิตภัณฑ์ของคุณจะต้องจัดการ 307 เปลี่ยนเส้นทาง หรือที่เรียกว่าการส่งต่อ URL การตอบกลับ 307 การเปลี่ยนเส้นทางชั่วคราวให้ URL ใหม่สำหรับเบราว์เซอร์เพื่อส่งคำขออีกครั้ง

เมื่อมีการเปลี่ยนเส้นทาง 307 คุณจะต้องโทรอีกครั้งด้วยข้อมูล URL ใหม่ เมื่อคุณทำเช่นนี้ คุณควรแคชโฮสต์และหมายเลขพอร์ตเพื่อใช้ในการโทรในอนาคตกับผู้ใช้/โทเค็นการเข้าถึงนั้น โปรดจำไว้ว่า การโทรแต่ละครั้งจะนับรวมในขีดจำกัดอัตรา พิจารณาว่าผู้ใช้ของคุณโต้ตอบกับผลิตภัณฑ์ของคุณอย่างไร ผู้ใช้บางคนจะกดปุ่มหรือเลือกการตั้งค่าซ้ำๆ ดังนั้นหากคุณเรียกใช้ทุกการกระทำของผู้ใช้ อาจส่งผลต่อขีดจำกัดอัตราอย่างรวดเร็ว หากผู้ใช้ทำการเปลี่ยนแปลงอย่างต่อเนื่องติดต่อกันอย่างรวดเร็ว คุณควรทำการเรียก API สำหรับค่าสุดท้าย (ล่าสุด) เท่านั้น

สำหรับข้อมูลเพิ่มเติมและตัวอย่างให้ดู วิธีการจับการเปลี่ยนเส้นทาง

หลังจาก 307 เปลี่ยนเส้นทาง

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

การเชื่อมต่อล้มเหลว

หากคุณกำลังใช้ข้อมูล URL ที่แคชไว้และได้รับข้อผิดพลาดในการเชื่อมต่อ (เนื่องจากโฮสต์ไม่ให้บริการหรือไซต์ไม่ทำงาน) คุณควรเปลี่ยนกลับเป็น URL พื้นฐานดั้งเดิม

การเปลี่ยนแปลงขีด จำกัด อัตรา

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