এই পৃষ্ঠায় ব্লেজের পে-অ্যাজ-ইউ-গো প্রাইসিং প্ল্যান অনুযায়ী Cloud Functions পরিবর্তনযোগ্য ও ব্যবহার-ভিত্তিক সীমাগুলোর বিস্তারিত বিবরণ দেওয়া হয়েছে। এই সীমাগুলো সেইসব ফায়ারবেস প্রোজেক্টের ক্ষেত্রে প্রযোজ্য, যেগুলো Node.js 10 রানটাইম এনভায়রনমেন্টে ফাংশন ডেপ্লয় করে।
ব্লেজ প্রাইসিং প্ল্যানটি বিনামূল্যে প্রচুর পরিমাণে ইনভোকেশন, কম্পিউট টাইম এবং ইন্টারনেট ট্র্যাফিক প্রদান করে। তবে, ফাংশন ডিপ্লয়মেন্টের ক্ষেত্রে ফাংশনের কন্টেইনারে ব্যবহৃত স্টোরেজ স্পেসের জন্য সামান্য চার্জ প্রযোজ্য হয়। বিস্তারিত জানতে, প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী (FAQ) দেখুন।
Cloud Functions কোটা ৪টি ক্ষেত্রকে অন্তর্ভুক্ত করে:
সম্পদের সীমাবদ্ধতা
এগুলো আপনার ফাংশনগুলোর মোট রিসোর্স ব্যবহারের পরিমাণকে প্রভাবিত করে।
সময়সীমা
এগুলো কোনো কিছুর চলার সময়কালকে প্রভাবিত করে।
হারের সীমা
এগুলো আপনার ফাংশনগুলো পরিচালনা করার জন্য Cloud Functions এপিআই কল করার হারকে প্রভাবিত করে।
নেটওয়ার্কিং সীমাবদ্ধতা
এগুলো বহির্গামী সংযোগ এবং ইনস্ট্যান্সের সীমাকে প্রভাবিত করে।
বিভিন্ন ধরণের সীমা নিচে আরও বিস্তারিতভাবে বর্ণনা করা হয়েছে। যেখানে প্রযোজ্য, সেখানে Cloud Functions (১ম প্রজন্ম) এবং Cloud Functions (২য় প্রজন্ম)-এর সীমার মধ্যে পার্থক্য উল্লেখ করা হয়েছে।
সম্পদের সীমাবদ্ধতা
সম্পদের সীমাবদ্ধতা আপনার ফাংশনগুলোর মোট সম্পদ ব্যবহারের পরিমাণকে প্রভাবিত করে। আঞ্চলিক পরিধি প্রকল্প-ভিত্তিক, এবং প্রতিটি প্রকল্প তার নিজস্ব সীমাবদ্ধতা বজায় রাখে।
| কোটা | বর্ণনা | সীমা (১ম প্রজন্ম) | সীমা (২য় প্রজন্ম) | বাড়ানো যেতে পারে | পরিধি |
|---|---|---|---|---|---|
| ফাংশনের সংখ্যা | প্রতি অঞ্চলে স্থাপন করা যেতে পারে এমন ফাংশনের মোট সংখ্যা | ১,০০০ | ১,০০০ বিয়োগ ডেপ্লয় করা Cloud Run সার্ভিসের সংখ্যা | না | অঞ্চল প্রতি |
| সর্বোচ্চ স্থাপনের আকার | একক ফাংশন ডেপ্লয়মেন্টের সর্বোচ্চ আকার | উৎসগুলির জন্য ১০০ মেগাবাইট (সংকুচিত)। সোর্স ও মডিউলগুলোর জন্য ৫০০ মেগাবাইট (অসংকুচিত)। | প্রযোজ্য নয় | না | প্রতি ফাংশন |
| সর্বোচ্চ অসংকুচিত HTTP অনুরোধের আকার | একটি HTTP অনুরোধে HTTP ফাংশনগুলিতে পাঠানো ডেটা | ১০ মেগাবাইট | ৩২ এমবি | না | প্রতি আহ্বানে |
| সর্বোচ্চ অসংকুচিত HTTP প্রতিক্রিয়ার আকার | HTTP প্রতিক্রিয়ায় HTTP ফাংশন থেকে পাঠানো ডেটা | ১০ মেগাবাইট | প্রতিক্রিয়া স্ট্রিমিং করার জন্য ১০ মেগাবাইট। স্ট্রিমিং-বহির্ভূত প্রতিক্রিয়ার জন্য ৩২ মেগাবাইট। | না | প্রতি আহ্বানে |
| ইভেন্ট-চালিত ফাংশনগুলির জন্য সর্বোচ্চ ইভেন্টের আকার | ইভেন্টের মাধ্যমে ব্যাকগ্রাউন্ড ফাংশনে ডেটা পাঠানো হয় | ১০ মেগাবাইট | ইভেন্টার্ক ইভেন্টের জন্য ৫১২ কেবি। পুরোনো ইভেন্টগুলোর জন্য ১০ মেগাবাইট। | না | প্রতি ইভেন্টে |
| সর্বোচ্চ ফাংশন মেমরি | প্রতিটি ফাংশন ইনস্ট্যান্স যে পরিমাণ মেমরি ব্যবহার করতে পারে | ৮ জিবি | ৩২ জিবি | না | প্রতি ফাংশন |
| ম্যাক্স প্রজেক্ট মেমরি | একটি প্রজেক্ট যে পরিমাণ মেমরি ব্যবহার করতে পারে, তার পরিমাণ (বাইট এককে)। এটি ১ মিনিটের সময়কালে বিভিন্ন ফাংশন ইনস্ট্যান্স জুড়ে ব্যবহারকারীর অনুরোধ করা মেমরির মোট যোগফলের মাধ্যমে পরিমাপ করা হয়। | নির্বাচিত অঞ্চলের উপর নির্ভর করে। উচ্চ ধারণক্ষমতা সম্পন্ন অঞ্চলগুলিতে এই সীমা বেশি হতে পারে অথবা সম্প্রতি চালু হওয়া অঞ্চলগুলিতে কম হতে পারে। | প্রযোজ্য নয় | হ্যাঁ | প্রকল্প এবং অঞ্চল অনুসারে |
| ম্যাক্স প্রজেক্ট সিপিইউ | একটি প্রজেক্ট যে পরিমাণ সিপিইউ (মিলি ভি-সিপিইউ-তে) ব্যবহার করতে পারে। এটি ১ মিনিটের সময়কালে ফাংশন ইনস্ট্যান্সগুলো জুড়ে ব্যবহারকারীর অনুরোধ করা মোট সিপিইউ-এর যোগফলের মাধ্যমে পরিমাপ করা হয়। | নির্বাচিত অঞ্চলের উপর নির্ভর করে। উচ্চ ধারণক্ষমতা সম্পন্ন অঞ্চলগুলিতে এই সীমা বেশি হতে পারে অথবা সম্প্রতি চালু হওয়া অঞ্চলগুলিতে কম হতে পারে। | প্রযোজ্য নয় | হ্যাঁ | প্রকল্প এবং অঞ্চল অনুসারে |
সময়সীমা
| কোটা | বর্ণনা | সীমা (১ম প্রজন্ম) | সীমা (২য় প্রজন্ম) | বাড়ানো যেতে পারে | পরিধি |
|---|---|---|---|---|---|
| সর্বোচ্চ ফাংশন সময়কাল | জোরপূর্বক বন্ধ করার আগে একটি ফাংশন সর্বাধিক যে পরিমাণ সময় চলতে পারে | ৫৪০ সেকেন্ড |
| না | প্রতি আহ্বানে |
হারের সীমা
| কোটা | বর্ণনা | সীমা (১ম প্রজন্ম) | সীমা (২য় প্রজন্ম) | বাড়ানো যেতে পারে | পরিধি |
|---|---|---|---|---|---|
| এপিআই কল (পড়ুন) | Cloud Functions এপিআই-এর মাধ্যমে ফাংশন বর্ণনা বা তালিকাভুক্ত করার জন্য কল। | প্রতি ১০০ সেকেন্ডে ৫০০০ | প্রতি ৬০ সেকেন্ডে ১২০০ | শুধুমাত্র প্রথম প্রজন্মের জন্য | প্রকল্প প্রতি (১ম প্রজন্ম) অঞ্চল প্রতি (২য় প্রজন্ম) |
| এপিআই কল (লিখুন) | Cloud Functions এপিআই-এর মাধ্যমে ফাংশন স্থাপন বা মুছে ফেলার জন্য কল। | প্রতি ১০০ সেকেন্ডে ৮০ | প্রতি ৬০ সেকেন্ডে ৬০ | নং ১ | প্রকল্প প্রতি (১ম প্রজন্ম) অঞ্চল প্রতি (২য় প্রজন্ম) |
| এপিআই কল (কল) | 'call' API-তে কল | প্রতি ১০০ সেকেন্ডে ১৬টি | প্রযোজ্য নয় | নং ২ | প্রতি প্রকল্প |
নেটওয়ার্কিং সীমাবদ্ধতা
Cloud Functions (২য় প্রজন্ম)-এর নেটওয়ার্কিং অনুরোধ এবং ব্যান্ডউইথ সীমা সম্পর্কে তথ্যের জন্য, নেটওয়ার্কিং সীমা দেখুন।
Cloud Functions (১ম প্রজন্ম)-এর ক্ষেত্রে নিম্নলিখিত নেটওয়ার্কিং সীমাবদ্ধতাগুলো প্রযোজ্য:
- প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে বহির্গামী সংযোগ: ৫০০ (বাড়ানো যাবে না)
- প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে বহির্গামী DNS রেজোলিউশন: ১০০ (বাড়ানো যাবে না)
- প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে সর্বোচ্চ প্যাকেট: ৮০,০০০
- প্রতি ইনস্ট্যান্সে প্রতি সেকেন্ডে সর্বোচ্চ বিট: ১০০,০০০,০০০
পরিমাপযোগ্যতা
HTTP দ্বারা আহ্বান করা Cloud Functions আগত ট্র্যাফিক সামলাতে দ্রুত স্কেল আপ করে, অন্যদিকে ব্যাকগ্রাউন্ড ফাংশনগুলো আরও ধীরে ধীরে স্কেল করে। একটি ফাংশনের স্কেল আপ করার ক্ষমতা কয়েকটি বিষয়ের উপর নির্ভর করে, যার মধ্যে রয়েছে:
- একটি ফাংশনের কার্য সম্পাদন সম্পন্ন হতে যে সময় লাগে (স্বল্প-সময়ের ফাংশনগুলো সাধারণত আরও বেশি যুগপৎ অনুরোধ সামাল দেওয়ার জন্য নিজেদের সময় বাড়াতে পারে)।
- কোল্ড স্টার্টের সময় কোনো ফাংশন চালু হতে যে পরিমাণ সময় লাগে।
- আপনার ফাংশনের ত্রুটির হার।
পরিবর্তনশীল উপাদান, যেমন আঞ্চলিক লোড এবং ডেটা সেন্টারের ধারণক্ষমতা।
ব্যাকগ্রাউন্ড ফাংশনের জন্য অতিরিক্ত কোটা
| কোটা | বর্ণনা | সীমা | বাড়ানো যেতে পারে | পরিধি | পণ্যের সংস্করণ |
|---|---|---|---|---|---|
| সর্বাধিক একযোগে আহ্বান | একটি ফাংশনের সর্বাধিক যুগপৎ আহ্বান উদাহরণস্বরূপ: যদি প্রতিটি ইভেন্ট পরিচালনা করতে ১০০ সেকেন্ড সময় লাগে, তাহলে আহ্বানের হার গড়ে প্রতি সেকেন্ডে ৩০-এ সীমাবদ্ধ থাকবে। | ৩,০০০ | হ্যাঁ | প্রতি ফাংশন | শুধুমাত্র প্রথম প্রজন্মের জন্য |
| সর্বোচ্চ আহ্বান হার | একটি একক ফাংশন দ্বারা পরিচালিত ইভেন্টের সর্বোচ্চ হার উদাহরণস্বরূপ: যদি কোনো ইভেন্ট হ্যান্ডেল করতে ১০০ মিলিসেকেন্ড সময় লাগে, তাহলে গড়ে মাত্র ১০০টি রিকোয়েস্ট সমান্তরালভাবে হ্যান্ডেল করা হলেও ইনভোকেশন রেট প্রতি সেকেন্ডে ১০০০-এ সীমিত থাকবে। | প্রতি সেকেন্ডে ১০০০ | না | প্রতি ফাংশন | শুধুমাত্র প্রথম প্রজন্মের জন্য |
| একযোগে সর্বোচ্চ ইভেন্ট ডেটার আকার | একটি ফাংশনের যুগপৎ আহ্বানের জন্য আগত ইভেন্টগুলির সর্বোচ্চ মোট আকার উদাহরণস্বরূপ: যদি ইভেন্টগুলোর আকার ১ মেগাবাইট হয় এবং সেগুলো প্রসেস করতে ১০ সেকেন্ড সময় লাগে, তাহলে গড় হার হবে প্রতি সেকেন্ডে ১টি ইভেন্ট, কারণ প্রথম ১০টি ইভেন্টের মধ্যে একটির প্রসেসিং শেষ না হওয়া পর্যন্ত ১১তম ইভেন্টটি প্রসেস করা হবে না। | ১০ মেগাবাইট | না | প্রতি ফাংশন | ১ম প্রজন্ম এবং ২য় প্রজন্ম |
| আগত ইভেন্টগুলির সর্বোচ্চ থ্রুপুট | একটি একক ফাংশনে আগত ইভেন্টগুলির সর্বোচ্চ থ্রুপুট উদাহরণস্বরূপ: যদি ইভেন্টগুলোর আকার ১ মেগাবাইট হয়, তাহলে ফাংশনগুলো ১০০ মিলিসেকেন্ডের মধ্যে শেষ হয়ে গেলেও, প্রতি সেকেন্ডে সেগুলোর আহ্বানের হার সর্বোচ্চ ১০টি হতে পারে। | প্রতি সেকেন্ডে ১০ মেগাবাইট | না | প্রতি ফাংশন | ১ম প্রজন্ম এবং ২য় প্রজন্ম |
যখন আপনি কোটার সীমায় পৌঁছে যান
যখন কোনো ফাংশন বরাদ্দকৃত কোনো রিসোর্সের সম্পূর্ণ ব্যবহার করে ফেলে, তখন কোটা রিফ্রেশ বা বৃদ্ধি না করা পর্যন্ত রিসোর্সটি অনুপলব্ধ হয়ে যায়। এর অর্থ হতে পারে যে, আপনার ফাংশন এবং একই প্রজেক্টের অন্য সব ফাংশন ততক্ষণ পর্যন্ত কাজ করবে না। যখন কোনো একটি রিসোর্সের কোটা অতিক্রম করে যায় এবং ফাংশনটি এক্সিকিউট হতে পারে না, তখন এটি একটি HTTP 500 এরর কোড রিটার্ন করে।
এখানে তালিকাভুক্ত ডিফল্ট কোটার চেয়ে বেশি কোটা বাড়াতে, Cloud Functions কোটা পেজে যান, যে কোটাগুলো পরিবর্তন করতে চান তা নির্বাচন করুন, ‘এডিট কোটা’ (Edit quotas) -তে ক্লিক করুন, অনুরোধ করা হলে আপনার ব্যবহারকারীর তথ্য দিন এবং আপনার নির্বাচিত প্রতিটি কোটার জন্য নতুন কোটার সীমা লিখুন।
Firebase CLI স্থাপনের জন্য কোটার সীমা
Firebase CLI দ্বারা ডেপ্লয় করা প্রতিটি ফাংশনের ক্ষেত্রে, এই ধরনের রেট ও টাইম লিমিটগুলো প্রভাবিত হয়:
- এপিআই কল (পড়া) - প্রতি ডেপ্লয়মেন্টে ১টি কল, ফাংশনের সংখ্যা যাই হোক না কেন।
- সীমা: প্রতি ১০০ সেকেন্ডে ৫০০০
- এপিআই কল (রাইট) - প্রতি ফাংশনে ১টি কল
- সীমা: প্রতি ১০০ সেকেন্ডে ৮০টি
ফায়ারবেস সিএলআই রেফারেন্সও দেখুন।