কোটা ও সীমা

যখন ব্যবহার করবেন তখন পেমেন্ট করুন Blaze প্রাইসিং প্ল্যান অনুযায়ী এই পৃষ্ঠায় Cloud Functions-এর জন্য স্কেলেবল, ব্যবহার-ভিত্তিক সীমা সম্পর্কে বিস্তারিত তথ্য দেওয়া হয়েছে। এইসব সীমা সেইসব Firebase প্রোজেক্টের ক্ষেত্রে প্রযোজ্য হয় যেগুলি Node.js 10 রানটাইম এনভায়রনমেন্টে ফাংশন ডিপ্লয় করে।

Blaze প্রাইসিং প্ল্যান প্রচুর পরিমাণে ইনভোকেশন, কম্পিউট টাইম ও ইন্টারনেট ট্রাফিক বিনামূল্যে প্রদান করে। তবে, ফাংশন ডিপ্লয়মেন্টের জন্য ফাংশনের কন্টেনারের জন্য ব্যবহৃত স্টোরেজ স্পেসের জন্য ছোট-স্কেলের চার্জ লাগে। বিস্তারিত জানতে, প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন।

Cloud Functions-এর কোটায় ৪টি ক্ষেত্র অন্তর্ভুক্ত:

  • রিসোর্সের সীমা

    আপনার ফাংশন মোট কত পরিমাণ রিসোর্স ব্যবহার করতে পারবে তা এগুলি প্রভাবিত করে।

  • সময়সীমা

    এগুলি কোনও জিনিস কতক্ষণ চলতে পারে তা প্রভাবিত করে।

  • রেট লিমিট

    আপনার ফাংশন ম্যানেজ করার জন্য আপনি কত ঘন ঘন Cloud Functions API কল করতে পারবেন, এগুলি তার উপর প্রভাব ফেলে।

  • নেটওয়ার্কিংয়ের সীমা

    এগুলি আউটবাউন্ড কানেকশন ও ইনস্ট্যান্সের সীমাকে প্রভাবিত করে।

বিভিন্ন ধরনের সীমা সম্পর্কে নিচে আরও বিস্তারিত বিবরণ দেওয়া হয়েছে। যেখানে প্রযোজ্য সেখানে Cloud Functions (ফার্স্ট জেনারেশন) এবং Cloud Functions (সেকেন্ড জেনারেশন)-এর সীমার মধ্যে পার্থক্য উল্লেখ করা হয়েছে।

রিসোর্সের সীমা

রিসোর্সের সীমা আপনার ফাংশন ব্যবহার করতে পারে এমন রিসোর্সের মোট পরিমাণকে প্রভাবিত করে। আঞ্চলিক স্কোপ প্রোজেক্ট প্রতি হয় এবং প্রতিটি প্রোজেক্ট নিজস্ব সীমা বজায় রাখে।

কোটা বিবরণ Limit (ফার্স্ট জেনারেশন) Limit (2nd gen) বাড়ানো যেতে পারে সুযোগ
ফাংশনের সংখ্যা প্রতিটি অঞ্চলে মোট যতগুলি ফাংশন ডিপ্লয় করা যাবে ১,০০০ ১,০০০ থেকে Cloud Run পরিষেবার সংখ্যা বিয়োগ করা হয়েছে না প্রতিটি অঞ্চলের জন্য
সর্বাধিক ডিপ্লয়মেন্ট সাইজ একটি ফাংশন ডেপ্লয়মেন্টের সর্বাধিক সাইজ সোর্সের জন্য ১০০ এমবি (কমপ্রেস করা)।
সোর্স ও মডিউলের জন্য ৫০০ এমবি (আনকমপ্রেসড)।
প্রযোজ্য নয় না ফাংশন প্রতি
আনকমপ্রেসড HTTP অনুরোধের সর্বাধিক সাইজ HTTP অনুরোধে HTTP ফাংশনে ডেটা পাঠানো হয়েছে ১০ এমবি ৩২ এমবি না প্রতিটি ইনভোকেশনের জন্য
আনকমপ্রেসড HTTP রেসপন্সের সর্বাধিক সাইজ HTTP রেসপন্সে HTTP ফাংশন থেকে পাঠানো ডেটা ১০ এমবি উত্তর স্ট্রিম করার জন্য ১০ এমবি।
নন-স্ট্রিমিং উত্তরের জন্য ৩২ এমবি।
না প্রতিটি ইনভোকেশনের জন্য
ইভেন্ট-চালিত ফাংশনের জন্য ইভেন্টের সর্বাধিক সাইজ ব্যাকগ্রাউন্ড ফাংশনে ইভেন্টের মাধ্যমে পাঠানো ডেটা ১০ এমবি Eventarc ইভেন্টের জন্য ৫১২ কেবি।
লিগ্যাসি ইভেন্টের জন্য ১০ এমবি।
না প্রতি ইভেন্ট
ফাংশনের সর্বাধিক মেমরি প্রতিটি ফাংশন ইনস্ট্যান্স যতটা মেমরি ব্যবহার করতে পারে 8GiB ৩২GiB না ফাংশন প্রতি
প্রোজেক্টের সর্বাধিক মেমরি কোনও প্রোজেক্ট বাইটে যতটা মেমরি ব্যবহার করতে পারে। ১ মিনিট সময়সীমা জুড়ে ফাংশন ইনস্ট্যান্স জুড়ে ব্যবহারকারীর অনুরোধ করা মেমরির মোট যোগফল দ্বারা এটি পরিমাপ করা হয়। বেছে নেওয়া অঞ্চলের উপর নির্ভর করে। এই সীমা উচ্চ-ক্ষমতা সম্পন্ন অঞ্চলে বেশি বা সম্প্রতি খোলা অঞ্চলে কম হতে পারে। প্রযোজ্য নয় হ্যাঁ প্রতি প্রোজেক্ট ও অঞ্চল অনুযায়ী
প্রোজেক্টের সর্বাধিক CPU মিলি vCPU-তে CPU-এর পরিমাণ, যা কোনও প্রোজেক্ট ব্যবহার করতে পারে। ১ মিনিট সময়সীমা জুড়ে ফাংশন ইনস্ট্যান্স জুড়ে ব্যবহারকারীর অনুরোধ করা CPU-এর মোট যোগফল দ্বারা এটি পরিমাপ করা হয়। বেছে নেওয়া অঞ্চলের উপর নির্ভর করে। এই সীমা উচ্চ-ক্ষমতা সম্পন্ন অঞ্চলে বেশি বা সম্প্রতি খোলা অঞ্চলে কম হতে পারে। প্রযোজ্য নয় হ্যাঁ প্রতি প্রোজেক্ট ও অঞ্চল অনুযায়ী

সময়সীমা

কোটা বিবরণ Limit (ফার্স্ট জেনারেশন) Limit (2nd gen) বাড়ানো যেতে পারে সুযোগ
ফাংশনের সর্বাধিক সময়সীমা জোর করে বন্ধ করার আগে কোনও ফাংশন সর্বাধিক যত সময় ধরে চলতে পারে ৫৪০ সেকেন্ড
  • HTTP ফাংশনের জন্য ৬০ মিনিট।
  • শিডিউল করা/টাস্ক কিউ ফাংশনের জন্য ১৮০০ সেকেন্ড।
  • ইভেন্ট-চালিত ফাংশনের জন্য ৫৪০ সেকেন্ড।
না প্রতিটি ইনভোকেশনের জন্য

রেট লিমিট

কোটা বিবরণ Limit (ফার্স্ট জেনারেশন) Limit (2nd gen) বাড়ানো যেতে পারে সুযোগ
API কল (READ) Cloud Functions API-এর মাধ্যমে ফাংশন বর্ণনা বা তালিকাভুক্ত করার জন্য কল প্রতি ১০০ সেকেন্ডে ৫০০০টি প্রতি ৬০ সেকেন্ডে ১২০০টি শুধুমাত্র ফার্স্ট জেনারেশনের জন্য প্রতি প্রোজেক্ট (ফার্স্ট জেনারেশন)
প্রতি অঞ্চল (সেকেন্ড জেনারেশন)
API কল (WRITE) Cloud Functions API-এর মাধ্যমে ফাংশন ডিপ্লয় বা মুছে ফেলার জন্য কল ১০০ সেকেন্ডে ৮০ বার ৬০ সেকেন্ডে ৬০টি না ১ প্রতি প্রোজেক্ট (ফার্স্ট জেনারেশন)
প্রতি অঞ্চল (সেকেন্ড জেনারেশন)
API কল (CALL) "কল" API-তে কল ১৬ প্রতি ১০০ সেকেন্ডে প্রযোজ্য নয় না ২ প্রোজেক্ট প্রতি

নেটওয়ার্কিংয়ের সীমা

Cloud Functions (২য় জেনারেশন) নেটওয়ার্কিং অনুরোধ ও ব্যান্ডউইথ সীমা সম্পর্কে আরও জানতে, নেটওয়ার্কিং সীমা দেখুন।

Cloud Functions (ফার্স্ট জেনারেশন)-এর ক্ষেত্রে নিম্নলিখিত নেটওয়ার্কিং সীমা প্রযোজ্য:

  • প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে আউটবাউন্ড কানেকশন: ৫০০ (বাড়ানো যাবে না)
  • প্রতি ইনস্ট্যান্স প্রতি সেকেন্ডে আউটবাউন্ড DNS রেজোলিউশন: ১০০ (বাড়ানো যাবে না)
  • প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে সর্বাধিক প্যাকেট: ৮০,০০০
  • প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে সর্বাধিক বিট: ১০০,০০০,০০০

স্কেলেবিলিটি

HTTP-এর মাধ্যমে চালু করা Cloud Functions ইনকামিং ট্রাফিক ম্যানেজ করার জন্য দ্রুত স্কেল আপ করে, যদিও ব্যাকগ্রাউন্ড ফাংশন আরও ধীরে ধীরে স্কেল করে। কোনও ফাংশনের স্কেল আপ করার ক্ষমতা কয়েকটি বিষয়ের উপর নির্ভর করে, যার মধ্যে রয়েছে:

  • কোনও ফাংশন এক্সিকিউশন সম্পূর্ণ হতে যতটা সময় লাগে (স্বল্প-সময়ের ফাংশনগুলি সাধারণত আরও সমবর্তী অনুরোধগুলি পরিচালনা করার জন্য স্কেল আপ করতে পারে)।
  • কোল্ড স্টার্ট-এ কোনও ফাংশন শুরু হতে যতটা সময় লাগে।
  • আপনার ফাংশনের সমস্যার হার।
  • অস্থায়ী ফ্যাক্টর, যেমন আঞ্চলিক লোড ও ডেটা সেন্টারের ক্ষমতা।

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

ব্যাকগ্রাউন্ড ফাংশনের জন্য অতিরিক্ত কোটা

কোটা বিবরণ সীমা বাড়ানো যেতে পারে সুযোগ প্রোডাক্ট ভার্সন
সর্বাধিক কনকারেন্ট ইনভোকেশন একটি ফাংশনের সর্বাধিক সমবর্তী ইনভোকেশন
উদাহরণ: প্রতিটি ইভেন্ট ম্যানেজ করতে ১০০ সেকেন্ড সময় লাগলে, ইনভোকেশন রেট গড়ে প্রতি সেকেন্ডে ৩০-এর মধ্যে সীমিত থাকবে
৩,০০০ ঘণ্টা হ্যাঁ ফাংশন প্রতি শুধুমাত্র ফার্স্ট জেনারেশন
সর্বাধিক ইনভোকেশন রেট একটি ফাংশন দ্বারা হ্যান্ডেল করা ইভেন্টের সর্বাধিক রেট
উদাহরণ: যদি কোনও ইভেন্ট হ্যান্ডেল করতে ১০০ms সময় লাগে, তাহলে ইনভোকেশন রেট প্রতি সেকেন্ডে ১০০০-এ সীমাবদ্ধ থাকবে, এমনকি যদি গড়ে মাত্র ১০০টি অনুরোধ সমান্তরালভাবে হ্যান্ডেল করা হয়
১০০০ প্রতি সেকেন্ডে না ফাংশন প্রতি শুধুমাত্র ফার্স্ট জেনারেশন
একসাথে হওয়া ইভেন্টের ডেটার সর্বাধিক সাইজ একটি ফাংশনের সমবর্তী ইনভোকেশনে ইনকামিং ইভেন্টের সর্বাধিক মোট সাইজ
উদাহরণ: ইভেন্টের সাইজ ১ এমবি হলে এবং সেগুলি প্রসেস করতে ১০ সেকেন্ড সময় লাগলে, গড় রেট হবে প্রতি সেকেন্ডে ১টি ইভেন্ট, কারণ প্রথম ১০টি ইভেন্টের মধ্যে একটির প্রসেসিং শেষ না হওয়া পর্যন্ত ১১তম ইভেন্ট প্রসেস করা হবে না
১০ এমবি না ফাংশন প্রতি ফার্স্ট জেনারেশন ও সেকেন্ড জেনারেশন
ইনকামিং ইভেন্টের সর্বাধিক থ্রুপুট একটি ফাংশনে ইনকামিং ইভেন্টের সর্বাধিক থ্রুপুট
উদাহরণ: ইভেন্টের সাইজ ১ এমবি হলে, ইনভোকেশন রেট সর্বাধিক ১০ প্রতি সেকেন্ড হতে পারে, এমনকি ফাংশন ১০০ মিলিসেকেন্ডের মধ্যে শেষ হলেও
প্রতি সেকেন্ডে ১০ এমবি না ফাংশন প্রতি ফার্স্ট জেনারেশন ও সেকেন্ড জেনারেশন

আপনি কোটার সীমায় পৌঁছে গেলে

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

এখানে তালিকাভুক্ত ডিফল্ট কোটার থেকে কোটা বাড়াতে, Cloud Functions কোটা পৃষ্ঠায় যান, যে কোটা পরিবর্তন করতে চান সেটি বেছে নিন, কোটা এডিট করুন বিকল্পে ক্লিক করুন, প্রম্পট করা হলে আপনার ব্যবহারকারীর তথ্য দিন এবং আপনার বেছে নেওয়া প্রতিটি কোটার জন্য নতুন কোটার সীমা লিখুন।

Firebase CLI ডিপ্লয়মেন্টের জন্য কোটার সীমা

Firebase CLI-এর ডিপ্লয় করা প্রতিটি ফাংশনের জন্য, এই ধরনের রেট ও সময়সীমা প্রভাবিত হয়:

  • API কল (READ) - ডিপ্লয়মেন্ট প্রতি ১টি কল, কতগুলি ফাংশন আছে তা বিবেচ্য নয়
    • সীমা: প্রতি ১০০ সেকেন্ডে ৫০০০টি
  • API কল (WRITE) - ফাংশন প্রতি ১টি কল
    • সীমা: প্রতি ১০০ সেকেন্ডে ৮০টি

এছাড়াও, Firebase CLI রেফারেন্স দেখুন।