এমন একাধিক পরিস্থিতি রয়েছে যেখানে প্রোফাইল সংগ্রহ আশানুরূপ নাও হতে পারে:
- একটি অভ্যন্তরীণ ত্রুটির কারণে প্রোফাইল সংগ্রহ ব্যর্থ হয়েছে৷ যদি এটি ঘটে,
ProfilingResult
API আপনাকে ত্রুটি সম্পর্কে বলে। - হার সীমাবদ্ধতার কারণে প্রোফাইল সংগ্রহ ব্যর্থ হয়। আরও তথ্যের জন্য, কিভাবে হার সীমিত কাজ করে দেখুন
- প্রোফাইল সংগ্রহ সফল হয়েছে, কিন্তু অ্যাপটি অবিলম্বে অবহিত করা হয় না। দীর্ঘ প্রোফাইল সংগ্রহের সময় অ্যাপটি ক্র্যাশ হলে এটি ঘটতে পারে। অ্যাপটি বন্ধ হয়ে গেলে, সিস্টেম স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যায় এবং প্রোফাইল সংরক্ষণ করে। অ্যাপটিকে সংগৃহীত প্রোফাইল সম্পর্কে অবহিত করা হয় যখন এটি পুনরায় চালু হয় এবং একজন সাধারণ শ্রোতাকে
ProfilingManager
সাথে নিবন্ধন করে।
হার সীমাবদ্ধতা কিভাবে কাজ করে
ProfilingManager
পৃথক অ্যাপ এবং সমগ্র সিস্টেম উভয়ের জন্যই একটি রেট লিমিটার অন্তর্ভুক্ত করে। রেট লিমিটার অ্যাপগুলিকে অনেকগুলি প্রোফাইল রেকর্ড করে অনেকগুলি সিস্টেম সংস্থান ব্যবহার করতে বাধা দেয়, কারণ একটি সম্পূর্ণ প্রোফাইলিং সেশন প্রচুর সংস্থান ব্যবহার করে৷
অ্যাপ্লিকেশান এবং সিস্টেম রেট লিমিটার উভয়ই সংগৃহীত প্রতিটি ধরণের প্রোফাইলের জন্য একটি খরচ নির্ধারণ করে, কারণ কিছু প্রোফাইল অন্যদের তুলনায় বেশি সম্পদ-নিবিড়। অ্যাপ লিমিটার নিয়ন্ত্রণ করে যে একটি পৃথক অ্যাপ তার মোট খরচের উপর ভিত্তি করে কতটা রেকর্ড করতে পারে। সিস্টেম লিমিটার, তবে, সমস্ত অ্যাপ দ্বারা রেকর্ড করা সমস্ত প্রোফাইলের মোট খরচ নিয়ন্ত্রণ করে।
রেট লিমিটার প্রতিটি অ্যাপ ব্যবহার করতে পারে এমন মোট খরচ সেট করে (এই খরচ সব অ্যাপের জন্য একই)। প্রতিটি প্রোফাইল তার প্রকারের উপর নির্ভর করে এই মোট খরচের একটি অংশ ব্যবহার করে।
হার লিমিটার তিনটি সময়কাল ব্যবহার করে:
- প্রতি ঘন্টা: প্রতি ঘন্টায় সর্বাধিক অনুমোদিত মূল্য রয়েছে।
- প্রতি দিন: প্রতিদিন অনুমোদিত সর্বোচ্চ খরচ আছে।
- প্রতি সপ্তাহে: প্রতি সপ্তাহে অনুমোদিত সর্বোচ্চ খরচ আছে।
রেট লিমিটার একটি মোট খরচ সেট করে যা এই প্রতিটি সময়ের মধ্যে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, একটি অ্যাপকে প্রতি ঘণ্টায় X প্রোফাইল, দিনে Y এবং প্রতি সপ্তাহে Z রেকর্ড করার অনুমতি দেওয়া হতে পারে। যদি আপনার অ্যাপ এই সময়ের যেকোনো একটিতে তার সীমাতে পৌঁছায়, ভবিষ্যতে প্রোফাইল অনুরোধের ফলে একটি ERROR_FAILED_RATE_LIMIT_PROCESS
ত্রুটি দেখা দেবে৷
এই সময়কালগুলি সিস্টেম-স্তরের হার সীমিত করার জন্য একইভাবে কাজ করে। যাইহোক, সিস্টেম রেট লিমিটার হল একটি বৈশ্বিক সীমা যা সমস্ত অ্যাপ দ্বারা ভাগ করা হয়। এই সীমাটি পৃথকভাবে অ্যাপ কোটা থেকে আলাদাভাবে সেট করা হয়েছে, তবে প্রতিটি প্রোফাইল একই ঘণ্টায়, দৈনিক এবং সাপ্তাহিক সময়কাল ব্যবহার করে এতে অবদান রাখে। যদি এই বিশ্বব্যাপী সীমা পৌঁছে যায়, আপনি ERROR_FAILED_RATE_LIMIT_SYSTEM
ত্রুটি পাবেন৷