কোটা

এই ডকুমেন্টে Merchant API-এর ক্ষেত্রে প্রযোজ্য কোটার তালিকা দেওয়া আছে।

সব ব্যবহারকারীর জন্য স্থিতিশীল ও ন্যায্য পরিবেশ নিশ্চিত করতে Merchant API কোটা ব্যবহার করে। কোটা কোনও একক API ব্যবহারকারীকে সিস্টেমে অতিরিক্ত লোড দেওয়া থেকে বিরত রাখে, উচ্চ পারফরম্যান্স নিশ্চিত করে। এই কোটা সম্পর্কে বোঝা, আপনার প্রোডাক্ট ডেটা ম্যানেজ করা এবং Google-এ আপনার ব্যবসা স্কেল করার জন্য গুরুত্বপূর্ণ।

সাধারণ ধারণা

Merchant API কোটা, কোটা গ্রুপের মাধ্যমে ম্যানেজ করা হয়।

API পদ্ধতি কোটা গ্রুপে ম্যাপ করা হয়। এই ম্যাপিংয়ের স্ট্রাকচার আলাদা হতে পারে:

  • প্রতি গ্রুপে একটি পদ্ধতি: কিছু কোটা গ্রুপ একটি API পদ্ধতিতে প্রযোজ্য হয়। যেমন, ডেটা সোর্স তালিকাভুক্ত করার পদ্ধতি accounts.dataSources.list এর নিজস্ব ডেডিকেটেড কোটা গ্রুপ আছে।
  • প্রতি গ্রুপে একাধিক পদ্ধতি (বান্ডেল করা): প্রায়শই, সম্পর্কিত পদ্ধতিগুলি একক কোটা গ্রুপে একসাথে বান্ডেল করা হয়। সেই গ্রুপের মধ্যে থাকা সব পদ্ধতি একই দৈনিক ও প্রতি মিনিটের সীমা শেয়ার করে। সাধারণ উদাহরণের মধ্যে রয়েছে:
    • সম্পর্কিত পদ্ধতি এবং রিসোর্সের জন্য সব রিড অপারেশন গ্রুপ করা, যেমন merchant-accounts-read-methods।
    • সম্পর্কিত পদ্ধতি এবং রিসোর্সের জন্য সব রাইট অপারেশন গ্রুপ করা, যেমন merchant-accounts-write-methods।

প্রতিটি মেথড কল একবার করে গণনা করা হয়, এর ধরন যাই হোক না কেন। ২৫০টি আইটেমের একটি list অনুরোধ একবারই গণনা করা হয়, ২৫০টি get অনুরোধ হিসেবে নয়।

বিল্ট-ইন HTTP ব্যাচিং কোটার উপর প্রভাব ফেলে না। অনুরোধের ব্যাচের মধ্যে প্রতিটি অনুরোধ কোটার বিপরীতে একটি হিসেবে গণনা করা হয়। যেমন, ৫০০টি insert অনুরোধ সহ একটি ব্যাচ অনুরোধের জন্য ৫০০টি স্বতন্ত্র insert পদ্ধতি অনুরোধ হিসেবে চার্জ করা হয়।

নির্দিষ্ট অঞ্চলের ব্যাচিংয়ের জন্য ব্যতিক্রম: বিশেষ অঞ্চলের ব্যাচ পদ্ধতি (batchCreate, batchUpdate, batchDelete) merchant_regions কোটা গ্রুপের জন্য একটি API কল হিসেবে গণনা করা হয়, পে-লোডে থাকা অঞ্চল সংক্রান্ত অপারেশনের সংখ্যা যাই হোক না কেন।

আপনার ইন্টিগ্রেশন কার্যকরভাবে ম্যানেজ করতে, আপনি যে API পদ্ধতি ব্যবহার করতে চান তার সাথে যুক্ত নির্দিষ্ট কোটা গ্রুপ পর্যালোচনা করা উচিত। আপনি কোটার তালিকা পদ্ধতিতে এই বিবরণ খুঁজে পেতে পারেন। আরও তথ্যের জন্য, মনিটর করা ও দৃশ্যমানতা দেখুন।

আপলোড করা সম্পর্কিত নীতি

আপডেটের ক্ষেত্রে Merchant API নিম্নলিখিত নীতিগুলি প্রয়োগ করে:

  • ডিফল্ট হিসেবে, আপনি দিনে সর্বাধিক দুবার প্রোডাক্ট আপডেট করতে পারবেন। প্রতি মিনিটের কোটা মেনে চলার জন্য আপনাকে সারাদিন ধরে সমানভাবে কল করতে হবে।
  • ডিফল্ট হিসেবে, আপনি প্রতিদিন সর্বাধিক দু'বার আপনার সাব-অ্যাকাউন্ট আপডেট করতে পারবেন। আপনার দৈনিক সাব-অ্যাকাউন্ট আপডেট কোটা হল আপনার মোট অনুমোদিত সাব-অ্যাকাউন্টের উপর ভিত্তি করে একটি সামগ্রিক সীমা।
  • ডিফল্ট হিসেবে, আপনি সাব-অ্যাকাউন্টের জন্য ডেটা সোর্স মেথড কল করতে পারবেন, যেমন list বা create, প্রতিটি সাব-অ্যাকাউন্টের জন্য দিনে সর্বাধিক দুবার।

রেট কোটা

প্রতিটি কোটা গ্রুপের দুই ধরনের সীমা (এবং দৈনিক ব্যবহার) আছে:

  • দৈনিক সীমা (quotaLimit): প্রতিদিন সর্বাধিক যতগুলি অনুরোধ করা যাবে। দৈনিক কোটার সীমা দুপুর ১২:০০টা UTC-তে রিসেট করা হয়।
  • প্রতি-মিনিটের সীমা (quotaMinuteLimit): প্রতি মিনিটে অনুমোদিত অনুরোধের সর্বাধিক সংখ্যা, অনুরোধের হার নিয়ন্ত্রণ করে। প্রতি মিনিটের কোটা সীমা একটি রোলিং উইন্ডো ব্যবহার করে, যেখানে এনফোর্সমেন্টের সময়সীমা শুরু হয় সেই পদ্ধতি এবং রিসোর্সের জন্য প্রথম API কল করার মুহূর্ত থেকে। যেমন, আপনি সকাল ১০:০১:৩০-এ কল করলে, সেই পদ্ধতির জন্য প্রতি-মিনিট কোটা উইন্ডো সকাল ১০:০২:৩০ পর্যন্ত চলবে।
  • দৈনিক ব্যবহার (quotaUsage): বর্তমান দিনের দৈনিক সীমার বিপরীতে ইতিমধ্যে করা এবং গণনা করা অনুরোধের সংখ্যা। যদি ফিল্ডটি না থাকে, তাহলে এই গ্রুপের জন্য এখনও কোনও কোটা ব্যবহার করা হয়নি।

আপনি আগে বর্ণনা করা তিনটি ফিল্ড (quotaLimit, quotaMinuteLimit এবং quotaUsage) quotas.list মেথডের উত্তরে খুঁজে পাবেন।

নির্দিষ্ট দৈনিক এবং প্রতি মিনিটের সীমা বিভিন্ন কোটা গ্রুপের মধ্যে উল্লেখযোগ্যভাবে পরিবর্তিত হয়। যেসব অপারেশনে বেশি ভলিউম বা কম সিস্টেম খরচ প্রত্যাশিত, যেমন প্রোডাক্ট ডেটা পড়া, সেগুলির সাধারণত বেশি সীমা থাকে। অন্যদিকে, অ্যাকাউন্ট পরিবর্তন করার মতো আরও নিবিড় বা সংবেদনশীল অপারেশনের ক্ষেত্রে সীমা কম হতে পারে।

কোটা বরাদ্দকরণ ও হায়ারার্কি

এই বিভাগে ব্যাখ্যা করা হয়েছে যে Merchant API কার হয়ে কোটা ব্যবহার ট্র্যাক ও প্রয়োগ করে:

সাধারণত, যে ব্যবহারকারী API অনুরোধ করেন তার উপর ভিত্তি করে কোটা চার্জ করা হয়।

  • স্ট্যান্ড-অ্যালোন অ্যাকাউন্ট: API কল যাচাই করার জন্য স্ট্যান্ড-অ্যালোন অ্যাকাউন্টের ক্ষেত্রে, সেই অনুরোধটি সেই অ্যাকাউন্টের কোটার বিপরীতে গণনা করা হয়।
    • উদাহরণ: একজন মার্চেন্ট Shoe Store A (অ্যাকাউন্ট আইডি: ১২৩৪৫) তার নিজস্ব অ্যাকাউন্ট (accounts/12345) টার্গেট করে products.insert কল করার জন্য নিজস্ব পরিষেবা অ্যাকাউন্ট ব্যবহার করে যাচাই করে। Shoe Store A-এর কোটা পুল থেকে কোটা ব্যবহার করা হয়।
  • উন্নত অ্যাকাউন্ট: উন্নত অ্যাকাউন্ট হিসেবে যাচাই করা হলে, এমনকি সাব-অ্যাকাউন্ট টার্গেট করার সময়ও, উন্নত অ্যাকাউন্টের পুল থেকে কোটা ব্যবহার করা হয়।
    • উদাহরণ: একটি এজেন্সি রিটেল ম্যানেজমেন্ট অ্যাকাউন্ট (উন্নত অ্যাকাউন্ট আইডি: ১২৩৪৫) একটি সাব-অ্যাকাউন্ট Clothing Store B (অ্যাকাউন্ট আইডি: ১১১১১) ম্যানেজ করে। এজেন্সি নিজের ক্রেডেনশিয়াল ব্যবহার করে যাচাই করে এবং products.insert Clothing Store B (accounts/11111)-কে টার্গেট করে কল করে। কোটা মূল এজেন্সির পুল (উন্নত অ্যাকাউন্ট আইডি: 12345) থেকে ব্যবহার করা হয়, সাব-অ্যাকাউন্টের পুল থেকে নয়।
  • সাব-অ্যাকাউন্ট: সাব-অ্যাকাউন্টের ক্রেডেনশিয়াল ব্যবহার করে API কল যাচাই করা হলে, সেই সাব-অ্যাকাউন্টের ব্যক্তিগত পুল থেকে কোটা চার্জ করা হয়। এটি স্ট্যান্ড-অ্যালোন অ্যাকাউন্টের মতোই কাজ করে, যদিও এটি অভিভাবকের উন্নত অ্যাকাউন্ট দ্বারা ম্যানেজ করা হয়।
    • উদাহরণ: আগের মতো একই সেট-আপ ব্যবহার করে, যদি Clothing Store B (অ্যাকাউন্ট আইডি: ১১১১১) তার সাব-অ্যাকাউন্টের জন্য বিশেষভাবে সেট-আপ করা ক্রেডেনশিয়াল ব্যবহার করে যাচাইকরণ করে, যাতে নিজের অ্যাকাউন্ট (accounts/11111) টার্গেট করে products.insert কল করা যায়, তাহলে Clothing Store B-এর ব্যক্তিগত কোটা পুল থেকে কোটা ব্যবহার করা হয়, মূল এজেন্সির পুল থেকে নয়।

সাধারণ নিয়মের ব্যতিক্রম

কোটা বরাদ্দ করার সাধারণ নিয়মের ক্ষেত্রে কিছু নির্দিষ্ট ব্যতিক্রম প্রযোজ্য:

  • Accounts.list: এই পদ্ধতির কোটা যাচাই করা ব্যবহারকারী বা কল করা পরিষেবা অ্যাকাউন্টের উপর চার্জ করা হয়, Merchant Center অ্যাকাউন্ট আইডির উপর নয়। এর কোটা ব্যবহার স্ট্যান্ডার্ড Merchant Center API ডায়াগনস্টিক পৃষ্ঠায় দেখা যাবে না। আপনার উন্নত অ্যাকাউন্ট থাকলে, আমরা accounts.listSubaccounts পদ্ধতি ব্যবহার করার সাজেশন দিই, যা আপনার উন্নত অ্যাকাউন্টের কোটায় গণনা করা হয়।
  • Issueresolution methods: These methods always count against the quota for the account whose issues are being requested, even if a different account is authenticating the request.

অ্যালোকেশন হায়ারার্কি

  • কেনাকাটার তুলনামূলক পরিষেবা (CSS): CSS হল এমন ওয়েবসাইট যা প্রোডাক্টের অফার একত্রিত করে এবং কেনাকাটা করার জন্য ব্যবহারকারীদের রিটেলারের ওয়েবসাইটে নিয়ে যায়। API কল করার সময়, আপনি যে নির্দিষ্ট CSS গ্রুপ, CSS ডোমেন, অ্যাকাউন্ট বা সাব-অ্যাকাউন্ট যাচাই করেন, সেটির উপর কোটা প্রয়োগ করা হয়।

    উদাহরণ:

    • Europe Shopping Group (অ্যাকাউন্ট আইডি: ১০০০১) নামের একটি CSS গ্রুপ তার সাথে যুক্ত CSS ডোমেনগুলি তালিকাভুক্ত করতে চায়। এই API কল করার জন্য নিজের ক্রেডেনশিয়াল দিয়ে যাচাই করার মাধ্যমে, Europe Shopping Group কোটা পুল থেকে সরাসরি কোটা ব্যবহার করা হয়।
    • একটি CSS ডোমেন TopDeals CSS (অ্যাকাউন্ট আইডি: ২০০০২) লেবেল অ্যাসাইন করার জন্য এর সাথে যুক্ত মার্চেন্ট অ্যাকাউন্টগুলির (accounts/30003) একটি টার্গেট করে একটি পদ্ধতি কল করার জন্য যাচাই করে। কোটা TopDeals CSS-এর কোটা পুল থেকে ব্যবহার করা হয়, মার্চেন্ট অ্যাকাউন্টের পুল থেকে নয়।
  • মার্কেটপ্লেস: মার্কেটপ্লেস হল অনলাইন প্ল্যাটফর্ম যা একাধিক ব্যক্তিগত মার্চেন্টকে হোস্ট করে। এটি বিশেষ উন্নত অ্যাকাউন্ট হিসেবে কাজ করে যার মাধ্যমে আপনি প্রতিটি বিক্রেতার জন্য আলাদা সাব-অ্যাকাউন্ট তৈরি করতে পারবেন।

নিচের ডায়াগ্রাম থেকে CSS গ্রুপ, CSS, মার্কেটপ্লেস, উন্নত অ্যাকাউন্ট, সিঙ্গল অ্যাকাউন্ট ও সাব-অ্যাকাউন্টের ক্রমপর্যায় সম্পর্কে জানতে পারবেন।

CSS গ্রুপ হল যাচাইকরণের সর্বোচ্চ লেভেল,
যার মধ্যে স্বতন্ত্র CSS, তার মধ্যে অ্যাকাউন্ট এবং
সবচেয়ে স্বতন্ত্র লেভেল হিসেবে সাব-অ্যাকাউন্ট থাকতে পারে।

অটোমেটিক কোটা অ্যাডজাস্টমেন্ট

নির্দিষ্ট পরিষেবার জন্য মার্চেন্ট API-এর একটি অটোমেটিক কোটা ম্যানেজমেন্ট সিস্টেম আছে, যা আপনার ব্যবহার, অফার এবং অ্যাকাউন্টের সাইজের উপর ভিত্তি করে ক্রমবর্ধমান মার্চেন্টদের জন্য কোটার সীমা অ্যাডজাস্ট করে। Merchant API প্রতিদিন এই কোটা আবার গণনা করে।

অটোমেটিক কোটা অ্যাডজাস্টমেন্টে অন্তর্ভুক্ত কোটা গ্রুপগুলি হল:

প্রোডাক্ট পরিষেবা

  • products এবং productInputs রিসোর্সের সাথে সম্পর্কিত পদ্ধতির সব কোটা গ্রুপ।
  • দৈনিক কল কোটা সাধারণত মার্চেন্টের অফার কোটার সংখ্যার ২ গুণ হিসেবে সেট করা হয়। এর থেকে বোঝা যায় যে কোনও মার্চেন্টকে দিনে সর্বাধিক দুবার তার প্রতিটি প্রোডাক্ট আপডেট করতে হতে পারে।
  • স্বতন্ত্র প্রোডাক্ট দুবারের বেশি আপডেট করা যেতে পারে, তবে আপনার সামগ্রিক দৈনিক API কল, মোট দৈনিক কল কোটা অতিক্রম করতে পারবে না।

অ্যাকাউন্ট পরিষেবা

  • Merchant API-তে বিভিন্ন গ্র্যানুলার অ্যাকাউন্ট-সম্পর্কিত রিসোর্সের সাথে সম্পর্কিত পদ্ধতির সব কোটা গ্রুপ।
  • দৈনিক কল কোটা সেই অ্যাকাউন্টের জন্য অনুমোদিত সাব-অ্যাকাউন্টের সর্বাধিক সংখ্যায় সেট করা হয়। এর ফলে, সাব-অ্যাকাউন্ট প্রতি দিনে সর্বাধিক দুবার রিড কল করা যায়।

ডেটা সোর্স পরিষেবা

  • Merchant API-তে ডেটা সোর্স সম্পর্কিত রিসোর্সের সাথে সম্পর্কিত পদ্ধতির সব কোটা গ্রুপ, যেমন list বা create যা উন্নত অ্যাকাউন্ট তার সাব-অ্যাকাউন্টে পারফর্ম করে।
  • উন্নত অ্যাকাউন্টে যতগুলি সাব-অ্যাকাউন্ট আছে, দৈনিক কল কোটা সাধারণত তার দ্বিগুণ হিসেবে সেট করা হয়। এটি ধরে নেয় যে একজন মার্চেন্ট তার প্রতিটি সাব-অ্যাকাউন্টের ডেটা সোর্স প্রতিদিন সর্বাধিক দুবার আপডেট করতে পারবেন।

শুধুমাত্র আগে বর্ণনা করা পরিষেবাগুলিতে অটোমেটিক কোটা অ্যাডজাস্টমেন্টের সুবিধা আছে। অন্যান্য পরিষেবার ডিফল্ট কোটা থাকে এবং কোটা বাড়াতে হলে ম্যানুয়ালি অনুরোধ করতে হয়। আরও তথ্যের জন্য, কোটা বাড়ানোর প্রসেস বিভাগ দেখুন।

কোটা শেষ হয়ে গেলে কী হয়

কোটা শেষ হয়ে গেলে, 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)): আপনি শুধুমাত্র বিশেষ পরিস্থিতিতে সাময়িকভাবে কোটা বাড়ানোর অনুরোধ করতে পারেন, যেমন নতুন মার্কেটে লঞ্চ করার সময় বা শপিং সিজনে ট্রাফিক বেশি থাকলে। এই ধরনের রিসোর্সের জন্য আমরা স্থায়ীভাবে কোটা বাড়ানোর অনুরোধ গ্রহণ করি না।
  • অটোমেটিক কোটা ছাড়া অন্যান্য সব রিসোর্সের জন্য: প্রয়োজন অনুযায়ী কোটা বাড়ানোর অনুরোধ করুন।

আপনার প্রয়োগের জন্য পর্যাপ্ত কোটা আছে কিনা তা নিশ্চিত করতে এবং আপনার কোটা কীভাবে অটোমেটিক অ্যাডজাস্ট করা হয় তা দেখতে আমরা আপনাকে পর্যায়ক্রমে আপনার কোটা চেক করার পরামর্শ দিই। প্রতিটি API পদ্ধতি গ্রুপের জন্য আপনার বর্তমান দৈনিক কোটা সীমা, মিনিট সীমা এবং বর্তমান দৈনিক ব্যবহার দেখতে quotas.list পদ্ধতি ব্যবহার করুন।

পেশাদার পদ্ধতি

এইসব পেশাদার পদ্ধতি প্রয়োগ করলে আপনার ইন্টিগ্রেশন মসৃণভাবে চলতে পারে, অপ্রত্যাশিত কোটা সংক্রান্ত সমস্যা এড়ানো যায় এবং Merchant Center-এর রিসোর্স দক্ষতার সাথে ব্যবহার করা যায়।

অনুরোধ ডিস্ট্রিবিউশন অপ্টিমাইজ করুন

  • অনুরোধ সমানভাবে ছড়িয়ে দিন: একসাথে অনেক অনুরোধ পাঠানো এড়িয়ে চলুন। প্রতি মিনিটের কোটা সীমার (quotaMinuteLimit) মধ্যে থাকতে, আপনার দৈনিক API কলগুলি সারাদিন ধরে সমানভাবে ছড়িয়ে দিন।
  • প্রোঅ্যাক্টিভ থ্রটলিং: আপনার অ্যাপ্লিকেশনে ক্লায়েন্ট-সাইড রেট লিমিটিং (থ্রটলিং) প্রয়োগ করুন। অতিরিক্ত ট্রাফিক বাতিল করার জন্য শুধুমাত্র Google-এর সার্ভারের উপর নির্ভর করবেন না। সোর্সে আপনার অনুরোধের রেট নিয়ন্ত্রণ করুন।

সমস্যা ম্যানেজ করা

  • HTTP 429 ম্যানেজ করা: আপনার অ্যাপ্লিকেশনকে অবশ্যই 429 Too Many Requests (quota/request_rate_too_high) সংক্রান্ত সমস্যা ম্যানেজ করার জন্য প্রস্তুত থাকতে হবে।
  • জিটার সহ এক্সপোনেনশিয়াল ব্যাকঅফ: ব্যর্থ অনুরোধের ক্ষেত্রে আবার চেষ্টা করার সময় (বিশেষত ৪২৯-এর পরে), এক্সপোনেনশিয়াল ব্যাকঅফ (অপেক্ষার সময় বাড়ানো) ব্যবহার করুন এবং "জিটার" (র‍্যান্ডম বিলম্ব) যোগ করুন। জিটার "রিট্রাই স্টর্ম" প্রতিরোধ করে, যেখানে একাধিক ক্লায়েন্ট ইনস্ট্যান্স ঠিক একই সময়ে আবার চেষ্টা করে, সার্ভারকে আবার ওভারলোড করে।
  • আবার চেষ্টা করার ইঙ্গিত মেনে চলুন: API রেসপন্সে আবার চেষ্টা করার বিবরণ বা হেডার থাকলে, কখন কল আবার শুরু করতে হবে তা নির্ধারণ করতে সেগুলি ব্যবহার করুন।

অপ্রয়োজনীয় কল কমানো

  • পুরনো কল আটকানো (404 NOT_FOUND): আর উপলভ্য নেই এমন রিসোর্স অনুরোধ করা বা মুছে ফেলা এড়িয়ে চলুন। এমনকি ব্যর্থ কলও API কোটা ব্যবহার করে। Merchant Center API ডায়াগনস্টিক্সে NOT_FOUNDটি সমস্যা মনিটর করুন যাতে পুরনো স্টেট ট্র্যাকিং বা অপ্রয়োজনীয় পোলিং শনাক্ত করা যায়।
  • আপডেট করার আগে যাচাই করুন: আপডেট করার অনুরোধ পাঠানোর আগে, ডেটা সত্যিই পরিবর্তিত হয়েছে কিনা তা চেক করুন। একই মান লেখা আপডেট পাঠানো এড়িয়ে চলুন।
  • ক্যাশিং ব্যবহার করুন: অপরিবর্তিত ডেটার জন্য বারবার get বা list কল এড়াতে, উপযুক্ত হলে স্থানীয়ভাবে ক্যাশে রিড রেসপন্স (যেমন, প্রোডাক্টের বিবরণ, সেটিংস) ব্যবহার করুন।
  • উন্নত অ্যাকাউন্ট এবং সাব-অ্যাকাউন্ট: আপনি উন্নত অ্যাকাউন্ট ব্যবহার করলে, উন্নত অ্যাকাউন্টের শেয়ার করা পুলের সাথে কল গণনা করতে চাইলে, উন্নত অ্যাকাউন্ট লেভেলে যাচাই করুন।
  • listSubaccounts ব্যবহার করুন: উন্নত অ্যাকাউন্টের জন্য, accounts.list-এর পরিবর্তে accounts.listSubaccounts ব্যবহার করুন। accounts.list কোটা কলিং ব্যবহারকারীর (MC ID নয়) থেকে চার্জ করা হয় এবং স্ট্যান্ডার্ড ডায়াগনস্টিক্সে দেখা যায় না। listSubaccounts আপনার MCA কোটার অংশ হিসেবে বিবেচিত হয়।