যখন ব্যবহার করবেন তখন পেমেন্ট করুন 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 Functions-এ পাঠানো ডেটা | ১০ এমবি | ৩২ এমবি | না | প্রতি ইনভোকেশন |
| আনকমপ্রেসড HTTP রেসপন্সের সর্বাধিক সাইজ | HTTP রেসপন্সে HTTP ফাংশন থেকে পাঠানো ডেটা | ১০ এমবি | উত্তর স্ট্রিম করার জন্য ১০ এমবি। নন-স্ট্রিমিং উত্তরের জন্য ৩২ এমবি। |
না | প্রতি ইনভোকেশন |
| ইভেন্ট-চালিত ফাংশনের জন্য ইভেন্টের সর্বাধিক সাইজ | ইভেন্টে ব্যাকগ্রাউন্ড ফাংশনে পাঠানো ডেটা | ১০ এমবি | Eventarc ইভেন্টের জন্য ৫১২ কেবি। লিগ্যাসি ইভেন্টের জন্য ১০ এমবি। |
না | প্রতি ইভেন্ট |
| ফাংশনের সর্বাধিক মেমরি | প্রতিটি ফাংশন ইনস্ট্যান্স যতটা মেমরি ব্যবহার করতে পারে | 8GiB | ৩২GiB | না | ফাংশন প্রতি |
| প্রোজেক্টের সর্বাধিক মেমরি | কোনও প্রোজেক্ট বাইটে যতটা মেমরি ব্যবহার করতে পারে। ১ মিনিট সময়সীমা জুড়ে ফাংশন ইনস্ট্যান্স জুড়ে ব্যবহারকারীর অনুরোধ করা মেমরির মোট যোগফল দ্বারা এটি পরিমাপ করা হয়। | বেছে নেওয়া অঞ্চলের উপর নির্ভর করে। এই সীমা বেশি-ক্ষমতা সম্পন্ন অঞ্চলে বেশি বা সম্প্রতি খোলা অঞ্চলে কম হতে পারে। | প্রযোজ্য নয় | হ্যাঁ | প্রতি প্রোজেক্ট ও অঞ্চল অনুযায়ী |
| প্রোজেক্টের সর্বোচ্চ CPU | মিলি vCPU-তে CPU-এর পরিমাণ, যা কোনও প্রোজেক্ট ব্যবহার করতে পারে। ১ মিনিট সময়সীমা জুড়ে ফাংশন ইনস্ট্যান্স জুড়ে ব্যবহারকারীর অনুরোধ করা CPU-এর মোট যোগফল দ্বারা এটি পরিমাপ করা হয়। | বেছে নেওয়া অঞ্চলের উপর নির্ভর করে। এই সীমা বেশি-ক্ষমতা সম্পন্ন অঞ্চলে বেশি বা সম্প্রতি খোলা অঞ্চলে কম হতে পারে। | প্রযোজ্য নয় | হ্যাঁ | প্রতি প্রোজেক্ট ও অঞ্চল অনুযায়ী |
সময়সীমা
| কোটা | বিবরণ | Limit (ফার্স্ট জেনারেশন) | Limit (2nd gen) | বাড়ানো যেতে পারে | সুযোগ |
|---|---|---|---|---|---|
| ফাংশনের সর্বাধিক সময়সীমা | জোর করে বন্ধ করার আগে কোনও ফাংশন সর্বাধিক যত সময় ধরে চলতে পারে | ৫৪০ সেকেন্ড |
|
না | প্রতি ইনভোকেশন |
রেট লিমিট
| কোটা | বিবরণ | 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 ইনকামিং ট্রাফিক ম্যানেজ করার জন্য দ্রুত স্কেল আপ করে, যদিও ব্যাকগ্রাউন্ড ফাংশন আরও ধীরে ধীরে স্কেল করে। কোনও ফাংশনের স্কেল আপ করার ক্ষমতা কয়েকটি বিষয়ের উপর নির্ভর করে, যার মধ্যে রয়েছে:
- কোনও ফাংশন সম্পূর্ণভাবে এক্সিকিউট হতে যতটা সময় লাগে (সাধারণত, কম সময় ধরে চলা ফাংশন আরও বেশি কনকারেন্ট অনুরোধ ম্যানেজ করার জন্য স্কেল আপ করতে পারে)।
- কোল্ড স্টার্ট-এ ফাংশন শুরু হতে যে পরিমাণ সময় লাগে।
- আপনার ফাংশনের ত্রুটির হার।
অস্থায়ী ফ্যাক্টর, যেমন আঞ্চলিক লোড ও ডেটা সেন্টারের ক্ষমতা।
ব্যাকগ্রাউন্ড ফাংশনের জন্য অতিরিক্ত কোটা
| কোটা | বিবরণ | সীমা | বাড়ানো যেতে পারে | সুযোগ | প্রোডাক্ট ভার্সন |
|---|---|---|---|---|---|
| সর্বাধিক কনকারেন্ট ইনভোকেশন | একটি ফাংশন একই সাথে সর্বাধিক যতবার ইনভোক করা যায় উদাহরণ: প্রতিটি ইভেন্ট ম্যানেজ করতে ১০০ সেকেন্ড সময় লাগলে, ইনভোকেশনের হার গড়ে প্রতি সেকেন্ডে ৩০ বারের মধ্যে সীমিত থাকবে |
৩,০০০ ঘণ্টা | হ্যাঁ | ফাংশন প্রতি | শুধুমাত্র ফার্স্ট জেনারেশন |
| সর্বাধিক ইনভোকেশন রেট | একটি ফাংশন দ্বারা ইভেন্ট হ্যান্ডেল করার সর্বাধিক রেট উদাহরণ: যদি কোনও ইভেন্ট হ্যান্ডেল করতে ১০০ms সময় লাগে, তাহলে ইনভোকেশন রেট প্রতি সেকেন্ডে ১০০০-এ সীমাবদ্ধ থাকবে, এমনকি যদি গড়ে মাত্র ১০০টি অনুরোধ সমান্তরালভাবে হ্যান্ডেল করা হয় |
১০০০ প্রতি সেকেন্ডে | না | ফাংশন প্রতি | শুধুমাত্র ফার্স্ট জেনারেশন |
| একসাথে চলা ইভেন্টের ডেটার সর্বাধিক সাইজ | একটি ফাংশনের সমবর্তী ইনভোকেশনে ইনকামিং ইভেন্টের সর্বাধিক মোট সাইজ উদাহরণ: ইভেন্টের সাইজ ১ এমবি হলে এবং সেগুলি প্রসেস করতে ১০ সেকেন্ড সময় লাগলে, গড় রেট হবে প্রতি সেকেন্ডে ১টি ইভেন্ট, কারণ প্রথম ১০টি ইভেন্টের মধ্যে কোনও একটির প্রসেসিং শেষ না হওয়া পর্যন্ত ১১তম ইভেন্ট প্রসেস করা হবে না |
১০ এমবি | না | ফাংশন প্রতি | ফার্স্ট জেনারেশন ও সেকেন্ড জেনারেশন |
| ইনকামিং ইভেন্টের সর্বাধিক থ্রুপুট | একটি ফাংশনে ইনকামিং ইভেন্টের সর্বাধিক থ্রুপুট উদাহরণ: ইভেন্টের সাইজ ১ এমবি হলে, ইনভোকেশন রেট প্রতি সেকেন্ডে সর্বাধিক ১০ হতে পারে, এমনকি ফাংশন ১০০ মিলিসেকেন্ডের মধ্যে শেষ হলেও |
প্রতি সেকেন্ডে ১০ এমবি | না | ফাংশন প্রতি | ফার্স্ট জেনারেশন ও সেকেন্ড জেনারেশন |
আপনি কোটার সীমায় পৌঁছে গেলে
কোনও ফাংশন বরাদ্দ করা রিসোর্স সম্পূর্ণ ব্যবহার করে ফেললে, কোটা রিফ্রেশ বা বৃদ্ধি না করা পর্যন্ত রিসোর্সটি আর উপলভ্য থাকে না। এর অর্থ হল, আপনার ফাংশন এবং একই প্রোজেক্টের অন্যান্য সব ফাংশন ততক্ষণ পর্যন্ত কাজ করবে না। কোনও ফাংশন HTTP 500 ত্রুটি কোড দেখায় যখন কোনও রিসোর্স কোটার থেকে বেশি হয়ে যায় এবং ফাংশনটি কাজ করতে পারে না।
এখানে তালিকাভুক্ত ডিফল্ট কোটার থেকে কোটা বাড়াতে, Cloud Functions কোটা পৃষ্ঠায় যান, আপনি যে কোটা পরিবর্তন করতে চান সেটি বেছে নিন, কোটা এডিট করুন বিকল্পে ক্লিক করুন, প্রম্পট করা হলে আপনার ব্যবহারকারীর তথ্য দিন এবং আপনার বেছে নেওয়া প্রতিটি কোটার জন্য নতুন কোটা সীমা লিখুন।
Firebase CLI ডিপ্লয়মেন্টের জন্য কোটার সীমা
Firebase CLI-এর ডিপ্লয় করা প্রতিটি ফাংশনের জন্য, এই ধরনের রেট ও সময়সীমা প্রভাবিত হয়:
- API কল (READ) - ডিপ্লয়মেন্ট প্রতি ১টি কল, কতগুলি ফাংশন আছে তা বিবেচ্য নয়
- সীমা: প্রতি ১০০ সেকেন্ডে ৫০০০
- API কল (WRITE) - ফাংশন প্রতি ১টি কল
- সীমা: প্রতি ১০০ সেকেন্ডে ৮০টি
এছাড়াও, Firebase CLI রেফারেন্স দেখুন।