FCM ব্যবহার করে পাঠানো প্রতিটি মেসেজ যাতে ডেলিভার করা যায়, সেটিই আমাদের লক্ষ্য। তবে, প্রতিটি মেসেজ ডেলিভার করলে, কখনও কখনও ব্যবহারকারীর সামগ্রিক অভিজ্ঞতা খারাপ হতে পারে। অন্যান্য ক্ষেত্রে, FCM যাতে সব প্রেরকের জন্য স্কেলেবল পরিষেবা প্রদান করতে পারে তা নিশ্চিত করার জন্য আমাদের বাউন্ডারি প্রদান করতে হবে। এই বিভাগে বর্ণিত সীমা এবং কোটার ধরনগুলি আমাদের এই গুরুত্বপূর্ণ বিষয়গুলির ভারসাম্য বজায় রাখতে সাহায্য করে।
ডাউনস্ট্রিম মেসেজ থ্রটলিং
HTTP v1 API, ডাউনস্ট্রিম মেসেজিংয়ের জন্য প্রোজেক্ট-প্রতি, মিনিট-প্রতি কোটা চালু করেছে। প্রতি মিনিটে ৬০০ হাজার মেসেজের ডিফল্ট কোটা ৯৯% FCM ডেভেলপারদের কভার করে। এটি সিস্টেমের স্থিতিশীলতা রক্ষা করে এবং স্পাইকি প্রোজেক্টের প্রভাব কমিয়ে দেয়।
ট্রাফিক প্যাটার্নে হঠাৎ বৃদ্ধি হলে
কোটা অতিক্রম করার সমস্যা হতে পারে। কোটা শেষ হয়ে গেলে, সিস্টেম HTTP স্ট্যাটাস কোড 429 RESOURCE_EXHAUSTED ("QUOTA_EXCEEDED") দেখায়।
পরের মিনিটে কোটা রিফিল না হওয়া পর্যন্ত এটি দেখানো হয়। ওভারলোড
পরিস্থিতিতেও ৪২৯টি উত্তর ফেরত দেওয়া হতে পারে, তাই আপনাকে প্রকাশিত
সুপারিশ অনুযায়ী ৪২৯টি উত্তর ম্যানেজ করার জন্য
দৃঢ়ভাবে উৎসাহিত করা হচ্ছে।
মনে রাখবেন:
- ডাউনস্ট্রিম কোটা মেসেজ পরিমাপ করে, অনুরোধ নয়।
- ক্লায়েন্ট সংক্রান্ত সমস্যা (HTTP স্ট্যাটাস কোড ৪০০-৪৯৯) গণনা করা হয় (৪২৯ বাদ দিয়ে)।
- কোটা প্রতি মিনিটে হিসেব করা হয়, তবে এই মিনিট ঘড়ির সাথে অ্যালাইন করা হয় না।
মনিটরিং কোটা
আপনি Google Cloud কনসোলে কোটা, ব্যবহার ও সমস্যা দেখতে পারবেন:
Google Cloud কনসোলে যান।
API ও পরিষেবা বিকল্প বেছে নিন।
টেবিল তালিকা থেকে, Firebase Cloud Messaging API বেছে নিন।
কোটা ও সিস্টেমের সীমা বিকল্প বেছে নিন।
কোটা বাড়ানোর অনুরোধ করা
কোটা বাড়ানোর অনুরোধ করার আগে, এগুলি নিশ্চিত করুন:
- আপনার ব্যবহার নিয়মিতভাবে প্রতিদিন অন্তত পরপর ৫ মিনিটের জন্য কোটার ≥ ৮০%।
- আপনার ক্লায়েন্ট সংক্রান্ত সমস্যার অনুপাত < ৫%, বিশেষ করে ট্রাফিক যখন সবচেয়ে বেশি থাকে।
- আপনি স্কেল অনুযায়ী মেসেজ পাঠানোর জন্য পেশাদার পদ্ধতি মেনে চলেন।
আপনি এই শর্ত পূরণ করলে, Google Cloud Console-এ নিম্নলিখিত পদ্ধতি ব্যবহার করে সর্বাধিক +২৫% কোটা বাড়ানোর অনুরোধ জমা দিতে পারবেন:
- কোটা ও সিস্টেমের সীমা বিকল্পে যান।
- টেবিল থেকে, প্রতি মিনিটে অনুরোধ পাঠান সারি বেছে নিন।
- এডিট করুন বোতামে ক্লিক করুন।
- আপনার অনুরোধ জানাতে নির্দেশাবলী অনুসরণ করুন।
FCM অনুরোধ পূরণ করার জন্য যথাসাধ্য চেষ্টা করবে (সীমা বাড়ানোর কোনও গ্যারেন্টি দেওয়া যাবে না)।
আসন্ন লঞ্চ বা সাময়িক ইভেন্টের কারণে আপনার আরও ডাউনস্ট্রিম মেসেজিং কোটার প্রয়োজন হলে, আপনাকে Firebase সহায়তা-এর মাধ্যমে কোটা বাড়ানোর অনুরোধ করতে হবে। আপনার কোটার জন্য অন্তত ১৫ দিন আগে অনুরোধ করুন যাতে অনুরোধটি প্রসেস করার জন্য পর্যাপ্ত সময় পাওয়া যায়। বড় অনুরোধের (>প্রতি মিনিটে ১৮M মেসেজ) জন্য, কমপক্ষে ৩০ দিনের নোটিশ প্রয়োজন। আমরা প্রতি বছর মাত্র ২টি অস্থায়ী কোটা ইভেন্ট অনুমোদন করতে পারি। সারা বছর জুড়ে অস্থায়ী কোটার মোট সময়সীমা ৩০ দিনের বেশি হলে চলবে না। লঞ্চ এবং বিশেষ ইভেন্টের অনুরোধ এখনও ক্লায়েন্ট ত্রুটি অনুপাত এবং পেশাদার পদ্ধতি সংক্রান্ত প্রয়োজনীয়তার উপর নির্ভর করে।
আরও জানতে, FCM কোটা দেখুন।
বিষয় মেসেজের সীমা ও ফ্যানআউট থ্রটলিং
আরও তথ্যের জন্য বিষয় মেসেজিং কোটা ও সীমা দেখুন।
আড়াল করা যায় এমন মেসেজ থ্রটলিং
আড়াল করা যায় এমন মেসেজ-এ যেমন বর্ণনা করা হয়েছে, আড়াল করা যায় এমন মেসেজ হল কন্টেন্ট-মুক্ত বিজ্ঞপ্তি যা একে অপরের উপরে আড়াল করার জন্য ডিজাইন করা হয়েছে। কোনও ডেভেলপার যদি কোনও অ্যাপে একই মেসেজ বারবার পাঠাতে থাকেন, তাহলে ব্যবহারকারীর ব্যাটারির উপর প্রভাব কমাতে আমরা মেসেজ পাঠাতে দেরি করি।
যেমন, আপনি যদি একটি ডিভাইসে নতুন ইমেল সিঙ্ক করার জন্য অনেক অনুরোধ পাঠান, তাহলে আমরা পরবর্তী ইমেল সিঙ্ক করার অনুরোধে কয়েক মিনিট দেরি করতে পারি যাতে ডিভাইসটি কম গড় হারে সিঙ্ক করতে পারে। ব্যবহারকারীর ব্যাটারির উপর প্রভাব সীমিত করার জন্য এই থ্রটলিং কঠোরভাবে করা হয়।
আপনার ব্যবহারের ক্ষেত্রে যদি হাই বার্স্ট সেন্ড প্যাটার্নের প্রয়োজন হয়, তাহলে নন-কোলাপসিবল মেসেজ সঠিক পছন্দ হতে পারে। এই ধরনের মেসেজের ক্ষেত্রে, ব্যাটারির খরচ কমাতে এই ধরনের মেসেজে কন্টেন্ট অন্তর্ভুক্ত করতে ভুলবেন না।
আমরা অ্যাপ প্রতি ডিভাইস প্রতি ২০টি মেসেজের বার্স্ট হিসেবে কোল্যাপ্সিবল মেসেজ সীমিত করি, প্রতি ৩ মিনিটে ১টি মেসেজ রিফিল সহ।
একটি ডিভাইসে মেসেজ পাঠানোর সর্বাধিক রেট
Android-এর ক্ষেত্রে, আপনি একটি ডিভাইসে প্রতি মিনিটে সর্বাধিক ২৪০টি মেসেজ এবং প্রতি ঘণ্টায় ৫,০০০টি মেসেজ পাঠাতে পারবেন। এই উচ্চ থ্রেশহোল্ডের উদ্দেশ্য হল অল্প সময়ের জন্য ট্রাফিকের আকস্মিক বৃদ্ধিকে অনুমতি দেওয়া, যেমন ব্যবহারকারীরা যখন চ্যাটে দ্রুত ইন্টার্যাক্ট করছেন। এই সীমা, ডিভাইসের ব্যাটারি যাতে অসাবধানতাবশত শেষ না হয়ে যায় সেই জন্য লজিক পাঠানোর সময় ত্রুটি প্রতিরোধ করে।
iOS-এর ক্ষেত্রে, রেট APNs-এর সীমা অতিক্রম করলে আমরা একটি সমস্যার মেসেজ দেখাই।