জাভা অ্যাপ্লিকেশন কর্মক্ষমতা বাড়ানোর প্রয়াসে, জাভা সম্প্রদায়ের মধ্যে একটি নতুন প্রস্তাব Z Garbage Collector (ZGC) প্রসারিত করতে চায়, এটি তরুণ এবং পুরানো বস্তুর জন্য পৃথক প্রজন্ম বজায় রাখতে সক্ষম করে। জাভা ডেভেলপারদের মতে, এটি ZGC আরও ঘন ঘন তরুণ বস্তু সংগ্রহ করার অনুমতি দেবে, কারণ জাভা ডেভেলপারদের মতে অল্প বয়স্ক বস্তুর অল্প বয়সে মারা যাওয়ার সম্ভাবনা বেশি।
প্রজন্মের ZGC এর জন্য OpenJDK Java Enhancement Proposal (JEP) এর প্রাথমিক উদ্দেশ্যগুলির মধ্যে রয়েছে বরাদ্দকরণের স্টল ঝুঁকি হ্রাস, হিপ মেমরি ওভারহেড, এবং আবর্জনা সংগ্রহ (GC) CPU ওভারহেড। প্রস্তাবের প্রবক্তারা বিশ্বাস করেন যে এই সুবিধাগুলি অ-প্রজন্মীয় ZGC এর সাথে তুলনা করলে থ্রুপুটে উল্লেখযোগ্য হ্রাস না করেই অর্জন করা যেতে পারে।
Z Garbage Collector, যা স্কেলেবিলিটি এবং কম লেটেন্সির জন্য ডিজাইন করা হয়েছিল, 2020 সালের সেপ্টেম্বরে Java Development Kit (JDK) 15 থেকে প্রোডাকশন রিলিজে পাওয়া যাচ্ছে। ডিফল্ট G1 কালেক্টরের বিপরীতে, যার পজ টাইম রয়েছে যা মিলিসেকেন্ড থেকে হতে পারে সেকেন্ড পর্যন্ত, ZGC বিরতির সময়গুলি ধারাবাহিকভাবে মাইক্রোসেকেন্ডে পরিমাপ করা হয়। ফলস্বরূপ, ZGC অনেক কাজের চাপের জন্য আবর্জনা সংগ্রহের সাথে সম্পর্কিত লেটেন্সি সমস্যাগুলি কার্যকরভাবে সমাধান করতে পারে।
পর্যাপ্ত সম্পদ উপলব্ধ হলে ZGC ভাল কাজ করে। যাইহোক, যেহেতু এটি তাদের বয়স নির্বিশেষে সমস্ত বস্তুকে একত্রে সঞ্চয় করে, তাই ZGC প্রতিবার কাজ করার সময় সমস্ত বস্তু সংগ্রহ করতে হবে। দুর্বল প্রজন্মের হাইপোথিসিস দাবি করে যে অল্প বয়স্ক বস্তুগুলি অল্প বয়সে মারা যায়, যখন বয়স্ক বস্তুগুলি টিকে থাকার সম্ভাবনা থাকে। ফলস্বরূপ, অল্প বয়স্ক বস্তু সংগ্রহ করা কম সম্পদের দাবি করে এবং আরও মেমরি প্রকাশ করে, যখন পুরানো বস্তু সংগ্রহ করা আরও সম্পদ খরচ করে এবং কম মেমরি মুক্ত করে।
প্রজন্মগত ZGC প্রস্তাব এখনও একটি নির্দিষ্ট মান জাভা সংস্করণে বরাদ্দ করা হয়নি। বর্তমান রিলিজ, JDK 20, এক সপ্তাহ আগে চালু করা হয়েছিল, JDK 21 সেপ্টেম্বরে চালু হওয়ার কথা ছিল। স্ট্যান্ডার্ড জাভা ছয় মাসের রিলিজ ক্যাডেন্সে কাজ করে।
ZGC এর জেনারেশনাল প্রস্তাব নিয়ে আলোচনা করা হচ্ছে, অ্যাপমাস্টার .io" target="_blank" rel="noopener" data-mce-href="https:// appmaster.io"> AppMaster ডেভেলপারদের ব্যাকএন্ড তৈরি করতে সাহায্য করতে পারে এমন নো-কোড no-code, ওয়েব এবং মোবাইল অ্যাপ্লিকেশনগুলি দ্রুত এবং দক্ষতার সাথে। AppMaster অ্যাপ্লিকেশনগুলি অসামান্য স্কেলেবিলিটি এবং কম লেটেন্সি প্রদর্শন করতে পারে, যা এন্টারপ্রাইজ অ্যাপ্লিকেশন এবং উচ্চ-লোড পরিস্থিতিগুলির জন্য উপযুক্ত করে তোলে। AppMaster এর ক্ষমতাগুলি আরও অন্বেষণ করতে, appmaster .io" data-mce-href="https: //studio. appmaster.io">একটি বিনামূল্যের অ্যাকাউন্ট তৈরি করুন এবং এর শক্তিশালী no-code টুলগুলির সুবিধা নিন৷