โควต้า

เอกสารนี้แสดงโควต้าที่ใช้กับ Merchant API

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

แนวคิดทั่วไป

โควต้า Merchant API ได้รับการจัดการผ่านกลุ่มโควต้า

เมธอด API จะจับคู่กับกลุ่มโควต้า โครงสร้างของการแมปนี้อาจแตกต่างกันไป ดังนี้

  • เมธอดเดียวต่อกลุ่ม: กลุ่มโควต้าบางกลุ่มใช้กับเมธอด API เดียว เช่น เมธอดการแสดงแหล่งข้อมูล accounts.dataSources.list มีกลุ่มโควต้าเฉพาะของตัวเอง
  • หลายเมธอดต่อกลุ่ม (การรวมกลุ่ม): บ่อยครั้งที่เมธอดที่เกี่ยวข้องจะรวมเข้าด้วยกันเป็นกลุ่มโควต้าเดียว เมธอดทั้งหมดภายในกลุ่มนั้นจะใช้ขีดจำกัดรายวันและต่อนาทีร่วมกัน ตัวอย่างที่พบบ่อย ได้แก่
    • การจัดกลุ่มการดำเนินการอ่านทั้งหมดสำหรับเมธอดและทรัพยากรที่เกี่ยวข้อง เช่น merchant-accounts-read-methods
    • การจัดกลุ่มการดำเนินการเขียนทั้งหมดสำหรับเมธอดและทรัพยากรที่เกี่ยวข้อง เช่น merchant-accounts-write-methods

ระบบจะนับการเรียกใช้เมธอดแต่ละครั้งเป็น 1 ครั้ง ไม่ว่าจะเป็นเมธอดประเภทใดก็ตาม คำขอ list ที่มี 250 รายการจะนับเป็น 1 ครั้ง ไม่ใช่คำขอ get 250 รายการ

การจัดกลุ่ม HTTP ในตัวจะไม่ส่งผลต่อโควต้า คำขอเดี่ยวแต่ละรายการภายในกลุ่มคำขอจะนับเป็น 1 รายการเทียบกับโควต้า ตัวอย่างเช่น คำขอแบบกลุ่มที่มีคำขอ insert 500 รายการจะเรียกเก็บเงินเป็นคำขอเมธอด insert 500 รายการแยกกัน

ข้อยกเว้นสำหรับการจัดกลุ่มภูมิภาคเฉพาะ: เมธอดกลุ่มภูมิภาคเฉพาะ (batchCreate, batchUpdate, batchDelete) จะนับเป็นการเรียก API ครั้งเดียวเทียบกับกลุ่มโควต้า merchant_regions โดยไม่คำนึงถึงจำนวนการดำเนินการในภูมิภาคที่มีอยู่ในเพย์โหลด

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

อัปเดตนโยบาย

Merchant API บังคับใช้นโยบายต่อไปนี้เกี่ยวกับการอัปเดต

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

โควต้าอัตรา

กลุ่มโควต้าแต่ละกลุ่มมีขีดจำกัด 2 ประเภท (และการใช้งานรายวัน) ดังนี้

  • ขีดจำกัดการใช้งานต่อวัน (quotaLimit): จำนวนคำขอสูงสุดที่อนุญาตต่อวัน ขีดจำกัดโควต้าประจำวันจะรีเซ็ตตอนเที่ยงวัน 12:00 น. ตามเวลา UTC
  • ขีดจำกัดต่อนาที (quotaMinuteLimit): จำนวนคำขอสูงสุดที่อนุญาตต่อนาที ซึ่งจะควบคุมอัตราคำขอ ขีดจำกัดโควต้าต่อนาทีจะใช้กรอบเวลาแบบต่อเนื่อง โดยระยะเวลาการบังคับใช้จะเริ่มตั้งแต่ช่วงเวลาที่มีการเรียก API ครั้งแรกสำหรับเมธอดและทรัพยากรนั้น ตัวอย่างเช่น หากคุณเรียกใช้เมธอดที่เวลา 10:01:30 น. กรอบเวลาโควต้าต่อนาทีสำหรับเมธอดนั้นจะทำงานจนถึงเวลา 10:02:30 น.
  • การใช้งานรายวัน (quotaUsage): จำนวนคำขอที่ส่งไปแล้วและนับรวมในขีดจำกัดการใช้งานต่อวันสำหรับวันปัจจุบัน หากไม่มีช่องนี้ แสดงว่ายังไม่มีการใช้โควต้าสำหรับกลุ่มนี้

คุณจะเห็นช่องทั้ง 3 ช่องที่อธิบายไว้ก่อนหน้านี้ (quotaLimit, quotaMinuteLimit และ quotaUsage) ในการตอบกลับของเมธอด quotas.list

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

การจัดสรรโควต้าและลำดับชั้น

ส่วนนี้จะอธิบายว่า Merchant API ติดตามและใช้โควต้าการใช้งานในนามของใคร

โดยทั่วไป ระบบจะเรียกเก็บโควต้าตามผู้ใช้ที่ส่งคำขอ API

  • บัญชีแบบสแตนด์อโลน: สำหรับบัญชีแบบสแตนด์อโลนที่ตรวจสอบสิทธิ์การเรียก API คำขอดังกล่าวจะนับรวมในโควต้าของบัญชีนั้น
    • ตัวอย่าง: ผู้ขาย Shoe Store A (รหัสบัญชี: 12345) ตรวจสอบสิทธิ์โดยใช้บัญชีบริการของตนเองเพื่อเรียกใช้ products.insert ที่กำหนดเป้าหมายไปยังบัญชีของตนเอง (accounts/12345) ระบบจะใช้โควต้าจากกลุ่มโควต้าของ Shoe Store A
  • บัญชีขั้นสูง: การตรวจสอบสิทธิ์ในฐานะบัญชีขั้นสูงจะใช้โควต้าจากกลุ่มบัญชีขั้นสูง แม้ว่าจะกำหนดเป้าหมายเป็นบัญชีย่อยก็ตาม
    • ตัวอย่าง: บัญชีดูแลจัดการค้าปลีกของเอเจนซี (รหัสบัญชีขั้นสูง: 12345) จัดการบัญชีย่อยร้านเสื้อผ้า ข (รหัสบัญชี: 11111) เอเจนซีจะตรวจสอบสิทธิ์โดยใช้ข้อมูลเข้าสู่ระบบของตนเองและเรียกใช้ products.insert โดยกำหนดเป้าหมายเป็นร้านเสื้อผ้า B (accounts/11111) ระบบจะใช้โควต้าจากกลุ่มของเอเจนซีหลัก (รหัสบัญชีขั้นสูง: 12345) ไม่ใช่กลุ่มของบัญชีย่อย
  • บัญชีย่อย: เมื่อตรวจสอบสิทธิ์การเรียก API โดยใช้ข้อมูลเข้าสู่ระบบของบัญชีย่อย ระบบจะหักโควต้าจากพูลส่วนบุคคลของบัญชีย่อยนั้น บัญชีนี้ทำงานในลักษณะเดียวกับบัญชีแบบสแตนด์อโลน แม้ว่าจะได้รับการจัดการโดยบัญชีขั้นสูงหลักก็ตาม
    • ตัวอย่าง: หากใช้การตั้งค่าเดียวกับก่อนหน้านี้ หากร้านเสื้อผ้า B (รหัสบัญชี: 11111) ตรวจสอบสิทธิ์โดยใช้ข้อมูลเข้าสู่ระบบที่ตั้งค่าไว้สำหรับบัญชีย่อยโดยเฉพาะเพื่อเรียกใช้ products.insert ที่กำหนดเป้าหมายไปยังบัญชีของตนเอง (accounts/11111) ระบบจะใช้โควต้าจากกลุ่มโควต้าส่วนบุคคลของร้านเสื้อผ้า B โดยไม่แตะต้องกลุ่มของเอเจนซีหลัก

ข้อยกเว้นสำหรับกฎทั่วไป

มีข้อยกเว้นบางประการที่เฉพาะเจาะจงซึ่งมีผลกับกฎทั่วไปของการจัดสรรโควต้า ดังนี้

  • Accounts.list: ระบบจะเรียกเก็บโควต้าสำหรับเมธอดนี้จากผู้ใช้ที่ตรวจสอบสิทธิ์แล้วหรือบัญชีบริการที่ทำการเรียก ไม่ใช่รหัสบัญชี Merchant Center การใช้งานโควต้าจะไม่แสดงในหน้าการวินิจฉัย Merchant Center API มาตรฐาน หากคุณมีบัญชีขั้นสูง เราขอแนะนำให้ใช้วิธี accounts.listSubaccounts ซึ่งจะนับรวมในโควต้าบัญชีขั้นสูง
  • วิธีการแก้ไขปัญหา: วิธีการเหล่านี้จะนับรวมในโควต้าสำหรับบัญชีที่มีการขอให้แก้ไขปัญหาเสมอ แม้ว่าบัญชีอื่นจะตรวจสอบสิทธิ์คำขออยู่ก็ตาม

ลำดับชั้นการจัดสรร

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

    ตัวอย่างเช่น

    • กลุ่ม CSS ชื่อ Europe Shopping Group (รหัสบัญชี: 10001) ต้องการแสดงโดเมน CSS ที่เชื่อมโยง การตรวจสอบสิทธิ์ด้วยข้อมูลเข้าสู่ระบบของตนเองเพื่อเรียก API นี้จะใช้โควต้าจากกลุ่มโควต้าของ Europe Shopping Group โดยตรง
    • โดเมน CSS TopDeals CSS (รหัสบัญชี: 20002) ตรวจสอบสิทธิ์เพื่อเรียกใช้เมธอดที่กำหนดเป้าหมายไปยังบัญชีผู้ขายที่เชื่อมโยงบัญชีใดบัญชีหนึ่ง (accounts/30003) เพื่อกำหนดป้ายกำกับ ระบบจะใช้โควต้าจากกลุ่มโควต้าของ TopDeals CSS ไม่ใช่กลุ่มของบัญชีผู้ขาย
  • มาร์เก็ตเพลส: มาร์เก็ตเพลสเป็นแพลตฟอร์มออนไลน์ที่โฮสต์ผู้ขายบุคคลธรรมดาหลายราย บัญชีดังกล่าวทำหน้าที่เป็นบัญชีขั้นสูงพิเศษที่ช่วยให้คุณสร้างบัญชีย่อยสำหรับผู้ขายแต่ละรายได้

แผนภาพต่อไปนี้แสดงลำดับชั้นของกลุ่ม CSS, CSS, มาร์เก็ตเพลส, บัญชีขั้นสูง, บัญชีแบบสแตนด์อโลน และบัญชีย่อย

กลุ่ม CSS เป็นระดับการตรวจสอบสิทธิ์ที่ครอบคลุมทั้งหมด โดยอาจมี CSS แต่ละรายการอยู่ภายในบัญชีต่างๆ และบัญชีย่อยเป็นระดับที่เจาะจงที่สุด

การปรับโควต้าอัตโนมัติ

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

กลุ่มโควต้าที่รวมอยู่ในการปรับโควต้าอัตโนมัติมีดังนี้

บริการผลิตภัณฑ์

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

บริการด้านบัญชี

  • กลุ่มโควต้าทั้งหมดของเมธอดที่เกี่ยวข้องกับแหล่งข้อมูลต่างๆ ที่เกี่ยวข้องกับบัญชีแบบละเอียดใน Merchant API
  • โควต้าการเรียกรายวันจะตั้งค่าเป็นจำนวนบัญชีย่อยสูงสุดที่อนุญาตสำหรับบัญชีนั้น ซึ่งจะช่วยให้สามารถเรียกใช้การอ่านได้สูงสุด 2 ครั้งต่อบัญชีย่อยต่อวัน

บริการแหล่งข้อมูล

  • กลุ่มโควต้าทั้งหมดของเมธอดที่เกี่ยวข้องกับแหล่งข้อมูลที่เกี่ยวข้องกับทรัพยากรใน Merchant API เช่น list หรือ create ที่บัญชีขั้นสูงดำเนินการในบัญชีย่อย
  • โดยทั่วไปแล้ว โควต้าการเรียกใช้รายวันจะตั้งไว้ที่ 2 เท่าของจำนวนบัญชีย่อยที่บัญชีขั้นสูงมี ซึ่งถือว่าผู้ขายสามารถอัปเดตแหล่งข้อมูลของบัญชีย่อยแต่ละบัญชีได้สูงสุด 2 ครั้งต่อวัน

เฉพาะบริการที่อธิบายไว้ก่อนหน้านี้เท่านั้นที่มีการปรับโควต้าอัตโนมัติ บริการอื่นๆ จะมีโควต้าเริ่มต้น และหากต้องการเพิ่มโควต้า คุณต้องส่งคำขอด้วยตนเอง ดูข้อมูลเพิ่มเติมได้ที่ส่วนกระบวนการเพิ่มโควต้า

สิ่งที่จะเกิดขึ้นเมื่อมีการใช้งานเกินโควต้า

หลังจากเกินโควต้าแล้ว ข้อผิดพลาดจะปรากฏในการตอบกลับจาก API และในหน้าการวินิจฉัยภายในบัญชี Merchant Center ดังนี้

  • ต่อนาที: quota/request_rate_too_high
{
    "error": {
        "code": 429,
        "message": "Quota per minute exceeded. Please distribute your requests over a longer time period. For more information check https://developers.google.com/merchant/api/guides/quotas-limits",
        "status": "RESOURCE_EXHAUSTED",
        "details": [
            {
                "@type": "type.googleapis.com/google.rpc.ErrorInfo",
                "reason": "quotaExceeded",
                "domain": "merchantapi.googleapis.com",
                "metadata": {
                    "HELP_CENTER_LINK": "https://developers.google.com/merchant/api/guides/quotas-limits",
                    "REASON": "QUOTA_REQUEST_RATE_TOO_HIGH"
                }
            }
        ]
    }
}
  • ต่อวัน: quota/daily_limit_exceeded
{
    "error": {
        "code": 429,
        "message": "Daily request quota exceeded. Please reduce number of requests. For more information check https://developers.google.com/merchant/api/guides/quotas-limits",
        "status": "RESOURCE_EXHAUSTED",
        "details": [
            {
                "@type": "type.googleapis.com/google.rpc.ErrorInfo",
                "reason": "quotaExceeded",
                "domain": "merchantapi.googleapis.com",
                "metadata": {
                    "HELP_CENTER_LINK": "https://developers.google.com/merchant/api/guides/quotas-limits",
                    "REASON": "QUOTA_TOO_MANY_REQUESTS"
                }
            }
        ]
    }
}

ข้อผิดพลาดต่อไปนี้เป็นขีดจำกัดของ Merchant Center และไม่เกี่ยวข้องกับโควต้า Merchant API คุณลองขอโควต้าสินค้า ฟีด หรือบัญชีย่อยเพิ่มได้โดยทำดังนี้

  • too_many_items: เกินโควต้าของผู้ขาย
  • too_many_subaccounts: บัญชีย่อยถึงจำนวนสูงสุดแล้ว

การตรวจสอบและระดับการเข้าถึง

หากต้องการตรวจสอบโควต้าการเรียกใช้และการใช้งานปัจจุบันของบัญชี ให้เรียกใช้ quotas.list พร้อมชื่อบัญชี

POST https://merchantapi.googleapis.com/quota/v1/accounts/{ACCOUNT_ID}/quotas
Content-Type: application/json
Authorization: Bearer {ACCESS_TOKEN}

แทนที่ค่าต่อไปนี้

  • ACCOUNT_ID: รหัส Merchant Center
  • ACCESS_TOKEN: โทเค็นการให้สิทธิ์เพื่อเรียก API

เมื่อส่งคำขอสำเร็จ API จะแสดงรายการทรัพยากร quotaGroups ที่มีทรัพยากร name ของกลุ่มโควต้า โควต้าต่างๆ และเมธอดที่ใช้โควต้ากลุ่ม

{
    "quotaGroups": [
        {
            "name": "accounts/{ACCOUNT_ID}/quotas/merchant-quota-listquotagroups",
            "quotaUsage": "2",
            "quotaLimit": "1000",
            "methodDetails": [
                {
                    "method": "quotaservice.listquotagroups",
                    "version": "v1",
                    "subapi": "quota",
                    "path": "quota/v1/quotaservice.listquotagroups"
                }
            ],
            "quotaMinuteLimit": "10"
        },
        {
            "name": "accounts/{ACCOUNT_ID}/quotas/merchant-commission-group-list",
            "quotaLimit": "10000",
            "methodDetails": [
                {
                    "method": "commissiongroupservice.listcommissiongroups",
                    "version": "v1",
                    "subapi": "youtube",
                    "path": "youtube/v1/commissiongroupservice.listcommissiongroups"
                }
            ],
            "quotaMinuteLimit": "60"
        },
        {
            "name": "accounts/{ACCOUNT_ID}/quotas/merchant-merchantreviews-list",
            "quotaLimit": "20000000",
            "methodDetails": [
                {
                    "method": "merchantreviewsservice.listmerchantreviews",
                    "version": "v1",
                    "subapi": "reviews",
                    "path": "reviews/v1/merchantreviewsservice.listmerchantreviews"
                }
            ],
            "quotaMinuteLimit": "60000"
        }
    ]
}

ขั้นตอนการเพิ่มโควต้า

หากต้องการขอโควต้าเพิ่มเติม ให้เปิดแบบฟอร์มติดต่อทีมสนับสนุน เลือก "คำขอเพิ่มโควต้า" ในช่อง "ปัญหา/คำถามคืออะไร" ที่ต้องกรอก แล้วกรอกข้อมูลในช่องที่ต้องกรอกทั้งหมด รวมถึงรหัส Merchant Center, เมธอดเป้าหมาย และเหตุผลทางธุรกิจ

  • สำหรับแหล่งข้อมูลที่มีโควต้าอัตโนมัติ (products, accounts และ datasources สำหรับบัญชีขั้นสูง): คุณสามารถขอเพิ่มโควต้าชั่วคราวได้เฉพาะในสถานการณ์พิเศษ เช่น การเปิดตัวในตลาดใหม่หรือในช่วงเทศกาลช็อปปิ้งที่มีการเข้าชมสูง เราไม่ยอมรับการเพิ่มโควต้าถาวรสำหรับทรัพยากรประเภทนี้
  • สำหรับทรัพยากรอื่นๆ ทั้งหมดที่ไม่มีโควต้าอัตโนมัติ: ขอเพิ่มโควต้าตามความจำเป็น

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

แนวทางปฏิบัติแนะนำ

การใช้แนวทางปฏิบัติแนะนำเหล่านี้จะช่วยให้การผสานรวมเป็นไปอย่างราบรื่น หลีกเลี่ยงข้อผิดพลาดเกี่ยวกับโควต้าที่ไม่คาดคิด และใช้ทรัพยากร Merchant Center ได้อย่างมีประสิทธิภาพ

เพิ่มประสิทธิภาพการกระจายคำขอ

  • กระจายคำขออย่างสม่ำเสมอ: หลีกเลี่ยงการส่งคำขอจำนวนมากพร้อมกัน กระจายการเรียก API รายวันให้เท่าๆ กันตลอดทั้งวันเพื่อให้อยู่ภายในขีดจำกัดโควต้าต่อนาที (quotaMinuteLimit)
  • การควบคุมเชิงรุก: ใช้การจำกัดอัตราคำขอฝั่งไคลเอ็นต์ (การควบคุม) ในแอปพลิเคชัน อย่าพึ่งพาเซิร์ฟเวอร์ของ Google เพียงอย่างเดียวในการปฏิเสธการรับส่งข้อมูลที่มากเกินไป ควบคุมอัตราการส่งคำขอที่แหล่งที่มา

การจัดการข้อผิดพลาดอย่างเหมาะสม

  • จัดการ HTTP 429: แอปพลิเคชันของคุณต้องเตรียมพร้อมที่จะจัดการข้อผิดพลาด 429 Too Many Requests (quota/request_rate_too_high)
  • Exponential Backoff ที่มี Jitter: เมื่อลองส่งคำขอที่ล้มเหลวอีกครั้ง (โดยเฉพาะหลังจากได้รับข้อผิดพลาด 429) ให้ใช้ Exponential Backoff (เพิ่มเวลารอ) และเพิ่ม "Jitter" (ความล่าช้าแบบสุ่ม) ความผันผวนจะช่วยป้องกัน "การลองใหม่จำนวนมาก" ซึ่งอินสแตนซ์ไคลเอ็นต์หลายรายการจะลองใหม่พร้อมกัน ทำให้เซิร์ฟเวอร์ทำงานหนักเกินไปอีกครั้ง
  • ทำตามคำแนะนำในการลองใหม่: หากการตอบกลับจาก API มีรายละเอียดหรือส่วนหัวสำหรับการลองใหม่ ให้ใช้ข้อมูลดังกล่าวเพื่อพิจารณาว่าจะเรียกใช้ต่อเมื่อใด

ลดการเรียกใช้ที่ซ้ำซ้อน

  • ป้องกันการเรียกใช้ข้อมูลที่ล้าสมัย (404 NOT_FOUND): หลีกเลี่ยงการขอหรือลบทรัพยากรที่ไม่มีอยู่แล้ว แม้แต่การเรียกที่ล้มเหลวก็ใช้โควต้า API ตรวจสอบข้อผิดพลาด NOT_FOUND ในการวินิจฉัย API ของ Merchant Center เพื่อตรวจหาการติดตามสถานะที่ล้าสมัยหรือการทำโพลที่ไม่จำเป็น
  • ตรวจสอบก่อนอัปเดต: ก่อนส่งคำขออัปเดต ให้ตรวจสอบว่าข้อมูลมีการเปลี่ยนแปลงจริงหรือไม่ หลีกเลี่ยงการส่งการอัปเดตที่เขียนค่าเดียวกัน
  • ใช้การแคช: แคชการตอบกลับการอ่าน (เช่น รายละเอียดสินค้า การตั้งค่า) ในเครื่องเมื่อเหมาะสมเพื่อหลีกเลี่ยงการเรียก get หรือ list ซ้ำๆ สำหรับข้อมูลที่ไม่มีการเปลี่ยนแปลง
  • บัญชีขั้นสูงและบัญชีย่อย: หากคุณใช้บัญชีขั้นสูง ให้ตรวจสอบสิทธิ์ที่ระดับบัญชีขั้นสูงหากต้องการให้ระบบนับการเรียกใช้ API เทียบกับพูลที่ใช้ร่วมกันของบัญชีขั้นสูง
  • ใช้ listSubaccounts: สำหรับบัญชีขั้นสูง ให้ใช้ accounts.listSubaccounts แทน accounts.list ระบบจะเรียกเก็บโควต้า accounts.list จากผู้ใช้ที่โทร (ไม่ใช่รหัส MC) และจะไม่แสดงในการวินิจฉัยมาตรฐาน listSubaccounts จะนับรวมในโควต้า MCA ของคุณ