หน้านี้กล่าวถึงแนวทางปฏิบัติแนะนำต่างๆ ที่ควรพิจารณาเมื่อพัฒนาแอปพลิเคชันโดยใช้ Google Ad Manager API
- นำไคลเอ็นต์/สตับบริการมาใช้ซ้ำระหว่างการดำเนินการ
- ใช้การแบ่งหน้าเมื่อดึงข้อมูลออบเจ็กต์
- คำขออัปเดตเป็นกลุ่ม
- จัดเก็บออบเจ็กต์ไคลเอ็นต์ Ad Manager API ตามความเหมาะสม
- ใช้พารามิเตอร์การเชื่อมโยงใน PQL
- ให้สิทธิ์แก่ผู้ใช้เท่าที่จําเป็น
ใช้ไคลเอ็นต์/สตับบริการซ้ำระหว่างการดำเนินการ
การสร้างไคลเอ็นต์/สตับบริการใหม่จะมีต้นทุนส่วนเพิ่มที่เกี่ยวข้องกับการดึงข้อมูล WSDL และการจัดสรรทรัพยากร หากเป็นไปได้ ให้สร้างไคลเอ็นต์/สตับบริการ 1 ครั้งเมื่อเริ่มต้นการดำเนินการและทำให้พร้อมใช้งานสำหรับคลาสและฟังก์ชันต่างๆ ตามความจำเป็น
ใช้การแบ่งหน้าเมื่อดึงข้อมูลออบเจ็กต์
บริการทั้งหมดรองรับเมธอด get*ByStatement()
ซึ่งอนุญาตให้กรองผลลัพธ์โดยใช้ไวยากรณ์ PQL คุณใช้วรรค LIMIT
และ OFFSET
เพื่อแบ่งชุดผลการค้นหาขนาดใหญ่ออกเป็นหน้าๆ ได้ เพื่อป้องกันการหมดเวลาและทำให้ขนาดหน้าตอบกลับสมเหตุสมผล ขนาดหน้าที่แนะนำคือ 200-500 หน้า ขึ้นอยู่กับความซับซ้อนของออบเจ็กต์
คำขออัปเดตเป็นกลุ่ม
เมื่อเปลี่ยนออบเจ็กต์หลายรายการที่เป็นประเภทเดียวกัน คุณจะมีประสิทธิภาพดีขึ้นได้โดยการส่งออบเจ็กต์ทั้งหมดในคำขอ update*()
เดียวกัน มีค่าใช้จ่ายบางส่วนในไคลเอ็นต์และเซิร์ฟเวอร์สำหรับแต่ละคำขอ และแบบกลุ่มอาจเป็นวิธีลดจำนวนคำขอที่มีประสิทธิภาพ เช่น ใช้ updateOrders
เพื่ออัปเดตคำสั่งซื้อกลุ่มหนึ่งแทนที่จะอัปเดตคำสั่งซื้อรายการเดียวในการโทรแต่ละครั้ง
ใช้พารามิเตอร์การเชื่อมโยงใน PQL
เชื่อมโยงพารามิเตอร์เป็นวิธีใส่ตัวแปรในคำสั่งการค้นหา PQL PQL หมายถึงตัวแปรเชื่อมโยงตามชื่อโดยไม่มีการเว้นวรรคซึ่งเริ่มต้นด้วยโคลอน เช่น :name
. ตัวอย่างโค้ดจะแสดงในหน้าไวยากรณ์ PQL
เราขอแนะนำให้ใช้การเชื่อมโยงตัวแปรเนื่องจากจะช่วยให้อ่านโค้ดได้ง่ายขึ้นโดยไม่ต้องเชื่อมโยงสตริงและตัวแปรไว้ในคำสั่งการค้นหา นอกจากนี้ยังช่วยให้นำคำสั่ง PQL มาใช้ซ้ำได้ง่ายๆ เนื่องจากคำค้นหาใหม่ทำได้โดยใช้การแทนที่ค่าพารามิเตอร์เชื่อมโยง
ให้สิทธิ์ผู้ใช้เท่าที่จําเป็น
เมื่อใช้ UserService เพื่อสร้าง/อัปเดตบทบาทของผู้ใช้ โปรดระวังอย่าให้สิทธิ์ที่ผู้ใช้ไม่จำเป็นต้องใช้ ฟีเจอร์ต่างๆ ของ API สามารถเข้าถึงได้โดยใช้บทบาทร่วมกัน แทนที่จะกำหนดบทบาทผู้ดูแลระบบให้กับผู้ใช้ โปรดดูเอกสารประกอบเกี่ยวกับสิทธิ์เมื่อตัดสินใจว่าจะมอบหมายบทบาทใดให้กับผู้ใช้ นอกจากนี้ ในฐานะนักพัฒนาแอปพลิเคชันบุคคลที่สาม อย่าลืมกำหนดระดับการเข้าถึงที่แอปพลิเคชันของคุณต้องการเมื่อขอให้เครือข่ายสร้างผู้ใช้ให้คุณ บทบาทที่มีสิทธิ์น้อยกว่าผู้ดูแลระบบอาจเพียงพอแล้ว
ใช้งานไม่เกินขีดจำกัดโควต้า
Ad Manager API บังคับใช้ขีดจำกัดโควต้าหลายขีดจำกัดเพื่อความมีประสิทธิภาพ คุณควรดูแลให้แอปพลิเคชันอยู่ภายใต้ขีดจำกัดเหล่านี้และรู้วิธีแก้ไขข้อผิดพลาดด้านโควต้าที่ API สามารถส่งกลับ
โควต้า API
โควต้าแรกที่ใช้กับคำขอ API คือโควต้าระดับเครือข่าย สำหรับบัญชี Ad Manager 360 ขีดจำกัดคือ 8 คำขอต่อวินาที และสำหรับบัญชี Ad Manager จำกัดที่ 2 คำขอต่อวินาที การใช้งานเกินขีดจำกัดนี้จะส่งผลให้เกิดข้อผิดพลาด
QuotaError.EXCEEDED_QUOTA
คำขอ API ทั้งหมดที่เกิดขึ้นบนเครือข่ายของคุณจะมีผลเฉพาะกับโควต้านี้ รวมถึงแอปพลิเคชันบุคคลที่สามที่คุณหรือผู้อื่นในบริษัทของคุณได้ให้สิทธิ์เข้าถึง API แก่เครือข่ายของคุณ
โควต้าเฉพาะระบบ
โควต้า API เพียงอย่างเดียวไม่เพียงพอที่จะปกป้องระบบที่ใช้ทรัพยากรจำนวนมากภายใน Ad Manager ได้อย่างเพียงพอ ระบบการรายงานและการคาดการณ์จะกำหนดโควต้าของตนเองที่อาจทำให้เกิดข้อผิดพลาดของ API ดังนี้
QuotaError.REPORT_JOB_LIMIT
และ
ForecastError.EXCEEDED_QUOTA
ตามลำดับ
การจัดการข้อผิดพลาดเกี่ยวกับโควต้า
หากแอปพลิเคชันของคุณพบข้อผิดพลาดเกี่ยวกับโควต้าข้างต้น ให้ทำตามกลยุทธ์สำหรับการลองส่งคำขอ API อีกครั้ง เราขอแนะนำให้รออย่างน้อย 5 วินาทีก่อน และหากคุณยังคงได้รับข้อผิดพลาด ให้ใช้ Exponential Backoff เพื่อเพิ่มเวลาระหว่างการดำเนินการอีกครั้ง หากลองอีกครั้งแล้วไม่สำเร็จ ให้ตรวจสอบแอปพลิเคชัน API เพื่อดูว่ามีผู้ใช้ในเครือข่ายใดทำให้โควต้าของคุณหมดเร็วหรือไม่