ত্রুটি পরিচালনা, হার সীমিতকরণ এবং কোটা ব্যবস্থাপনা

প্রোডাকশন অ্যাপ্লিকেশন এবং এআই এজেন্টগুলিতে যখন আপনি ডেভেলপার নলেজ এপিআই বা ডেভেলপার নলেজ এমসিপি সার্ভারকে কোয়েরি করেন, তখন উচ্চ পারফরম্যান্স অর্জনের জন্য অবশ্যই এরর হ্যান্ডলিং এবং কোটা ম্যানেজমেন্ট থাকতে হবে।

এই নির্দেশিকায় আপনি শিখবেন কীভাবে:

  • HTTP 429 রেসপন্সের জন্য জিটার সহ ট্রাঙ্কেটেড এক্সপোনেনশিয়াল ব্যাকঅফ প্রয়োগ করুন।
  • gRPC-এর প্রমিত ত্রুটি কোডগুলো ( INVALID_ARGUMENT , PERMISSION_DENIED , RESOURCE_EXHAUSTED ) পরিচালনা করুন।
  • এমসিপি সংযোগের সময়সীমা এবং পুনঃপ্রচেষ্টার যুক্তি পরিচালনা করুন।
  • কোটা ব্যবস্থাপনা ও ক্যাশিংয়ের সর্বোত্তম অনুশীলনগুলো প্রয়োগ করুন।

HTTP 429 রেট লিমিটিং এবং এক্সপোনেনশিয়াল ব্যাকঅফ

যখন অনুরোধের হার ডিফল্ট এপিআই কোটা অতিক্রম করে, তখন পরিষেবাটি একটি HTTP 429 Too Many Requests ত্রুটি ফেরত দেয়। পরিষেবাটির উপর অতিরিক্ত চাপ এড়াতে অ্যাপ্লিকেশনগুলিকে অবশ্যই জিটার সহ ট্রাঙ্কেটেড এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করে পুনরায় চেষ্টা করার লজিক প্রয়োগ করতে হবে।

খণ্ডিত সূচকীয় ব্যাকঅফ

নিম্নলিখিত সূত্র ব্যবহার করে পুনঃপ্রচেষ্টার বিলম্ব গণনা করুন:

retry_delay = min(max_delay, initial_delay * (2 ^ attempt) + jitter)

পুনরায় চেষ্টার বিলম্ব গণনা করতে নিম্নলিখিত প্যারামিটারগুলো ব্যবহার করুন:

  • initial_delay : প্রাথমিক পুনঃপ্রচেষ্টার বিলম্ব (উদাহরণস্বরূপ, ১.০ সেকেন্ড)।
  • max_delay : সর্বোচ্চ ব্যাকঅফ সীমা (উদাহরণস্বরূপ, ৩২.০ সেকেন্ড)।
  • attempt : বর্তমান পুনঃচেষ্টার সংখ্যা (0, 1, 2, ...)।
  • jitter : থ্রেড সিনক্রোনাইজেশন স্পাইক (থান্ডারিং হার্ড প্রবলেম) প্রতিরোধ করার জন্য ০ থেকে ১.০ সেকেন্ডের মধ্যে একটি র‍্যান্ডম মান।

gRPC ত্রুটি পরিচালনা

gRPC-এর মাধ্যমে পরিষেবাটি অ্যাক্সেসকারী অ্যাপ্লিকেশনগুলিকে অবশ্যই প্রমিত grpc.StatusCode মানগুলি যাচাই করতে হবে।

স্ট্যান্ডার্ড gRPC স্ট্যাটাস কোড

নিম্নলিখিত সারণিতে পরিষেবা দ্বারা ফেরত দেওয়া প্রামাণিক gRPC স্ট্যাটাস কোড এবং ক্লায়েন্টের জন্য প্রস্তাবিত পরিচালনা পদ্ধতি তালিকাভুক্ত করা হয়েছে:

gRPC স্ট্যাটাস কোড HTTP অবস্থা মূল কারণ সুপারিশকৃত পদক্ষেপ
INVALID_ARGUMENT 400 Bad Request ত্রুটিপূর্ণ কোয়েরি স্ট্রিং, অবৈধ প্যারামিটার ফরম্যাট, অথবা অবৈধ ফিল্ড মাস্ক। পুনরায় চেষ্টা করবেন না । পুনরাবৃত্তি করার আগে অনুরোধের প্যারামিটারগুলো সংশোধন করুন।
UNAUTHENTICATED 401 Unauthorized অনুপস্থিত, মেয়াদোত্তীর্ণ, বা ত্রুটিপূর্ণ API কী অথবা OAuth Bearer টোকেন। পুনরায় চেষ্টা করবেন না । ক্রেডেনশিয়াল রিফ্রেশ করুন অথবা একটি বৈধ এপিআই কী তৈরি করুন।
PERMISSION_DENIED 403 Forbidden এপিআই কী-তে অনুমতির অভাব রয়েছে অথবা প্রজেক্টে ডেভেলপার নলেজ এপিআই নিষ্ক্রিয় করা আছে। পুনরায় চেষ্টা করবেন না । গুগল ক্লাউড কনসোলে এপিআই (API) সক্রিয়করণ যাচাই করুন।
NOT_FOUND 404 Not Found নির্দিষ্ট parent ডকুমেন্টের পাথটি বিদ্যমান নেই। অনুরোধ করা কোনো ডকুমেন্ট খুঁজে না পাওয়া গেলে BatchGetDocuments প্রক্রিয়াটি স্বয়ংক্রিয়ভাবে ব্যর্থ হয়। পুনরায় চেষ্টা করবেন না । ডকুমেন্ট রিসোর্সের নাম যাচাই করুন।
RESOURCE_EXHAUSTED 429 Too Many Requests রেট সীমা বা প্রকল্প কোটা সীমা অতিক্রম করা হয়েছে। জিটার সহ এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করে পুনরায় চেষ্টা করুন ।
UNAVAILABLE 503 Service Unavailable সাময়িক নেটওয়ার্ক সংযোগ বিচ্ছিন্ন হওয়া অথবা সার্ভার পুনরায় চালু হওয়া। এক্সপোনেনশিয়াল ব্যাকঅফ সহ পুনরায় চেষ্টা করুন ।
DEADLINE_EXCEEDED 504 Gateway Timeout অনুরোধটি সম্পন্ন হওয়ার আগেই নির্ধারিত RPC সময়সীমা অতিক্রম করেছে। ক্লায়েন্ট RPC টাইমআউট বাড়িয়ে পুনরায় চেষ্টা করুন ।

এমসিপি সংযোগ সময়সীমা এবং ত্রুটি ব্যবস্থাপনা

ডেভেলপার নলেজ এমসিপি সার্ভার হলো একটি রিমোট সার্ভিস যা https://developerknowledge.googleapis.com/mcp এ হোস্ট করা আছে এবং HTTPS (HTTP POST বা সার্ভার-সেন্ট ইভেন্টস ব্যবহার করে) এর মাধ্যমে অ্যাক্সেস করা হয়। এআই হোস্ট এবং এজেন্টদের অবশ্যই কানেকশন টাইমআউট এবং টুলের ত্রুটিগুলো দক্ষতার সাথে পরিচালনা করতে হবে।

টুল এক্সিকিউশন টাইমআউট

যখন কোনো এজেন্ট search_documents , get_documents , বা answer_query টুলগুলো কল করে, তখন নেটওয়ার্ক সংযোগে বিলম্ব হলে টুল কলগুলো টাইমআউট উইন্ডো (যেমন, ৩০ সেকেন্ড) অতিক্রম করতে পারে।

টুল এক্সিকিউশন টাইমআউট মোকাবেলা করতে:

  • ক্লায়েন্ট টাইমআউট কনফিগার করুন : আপনার এমসিপি হোস্ট ক্লায়েন্ট কনফিগারেশনে টুল এক্সিকিউশন টাইমআউট ৩০–৬০ সেকেন্ডে সেট করুন।
  • নেটওয়ার্ক বিঘ্ন সামলান : সাময়িক নেটওয়ার্ক সংযোগ বিচ্ছিন্ন হলে বা HTTP 503 প্রতিক্রিয়া দেখা দিলে, ব্যর্থ হওয়া HTTP অনুরোধগুলি এক্সপোনেনশিয়াল ব্যাকঅফ সহ পুনরায় চেষ্টা করুন।
  • ত্রুটির বার্তা পরীক্ষা করুন : অবৈধ আর্গুমেন্ট এবং কোটা শেষ হয়ে যাওয়ার মধ্যে পার্থক্য করার জন্য স্ট্যান্ডার্ড JSON-RPC ত্রুটির বার্তা বা HTTP ত্রুটির স্ট্যাটাস কোড পার্স করুন।

কোটা ব্যবস্থাপনার সর্বোত্তম অনুশীলন

এপিআই-এর সর্বোত্তম ব্যবহার বজায় রাখতে এবং অপ্রত্যাশিত রেট লিমিট এড়াতে এই সেরা পদ্ধতিগুলো অনুসরণ করুন:

  1. সংগৃহীত ডকুমেন্টের বিষয়বস্তু ক্যাশে করুন : এমন অ্যাপ্লিকেশন তৈরি করার সময়, যেগুলো প্রায়শই একই পৃষ্ঠা ব্যবহার করে, ফেচ করা মার্কডাউন ডকুমেন্টগুলো স্থানীয়ভাবে বা কোনো ক্যাশে (যেমন রেডিস) সংরক্ষণ করুন।
  2. ব্যাচ রিট্রিভাল ব্যবহার করুন : একাধিক ধারাবাহিক documents.get রিকোয়েস্ট চালানোর পরিবর্তে documents.batchGet ব্যবহার করুন।
  3. কোয়েরি ফিল্ড অপ্টিমাইজ করুন : সিলেক্টিভ ফিল্ড মাস্ক ( fields=results(parent,content) ) ব্যবহার করে শুধুমাত্র প্রয়োজনীয় রেসপন্স ফিল্ডগুলোর জন্য অনুরোধ করুন।
  4. কোটা ব্যবহার নিরীক্ষণ করুন : গুগল ক্লাউড কনসোল এপিআই ড্যাশবোর্ডে এপিআই অনুরোধের হার ট্র্যাক করুন।