ভার্চুয়ালাইজেশন প্রযুক্তি যাই হোক না কেন আমি ব্যবহার করছি
সেই দিনগুলির কথা মনে করুন যখন 512 এমবি র্যামের বেশি র্যাম সহ সিস্টেমগুলি রক্তপাতের প্রান্ত হিসাবে বিবেচিত হয়? আমি আগের জন্য কোড লেখার জন্য আমার দিন ব্যয়।
আমি বেশিরভাগ নিম্ন স্তরের প্রোগ্রামগুলিতে কাজ করি যা একটি জেন পরিবেশে সুবিধাযুক্ত ডোমেনে চালিত হয়। সুবিধাপ্রাপ্ত ডোমেনের জন্য আমাদের সিলিংটি 512 এমবি, যা আমাদের গ্রাহকদের ব্যবহারের জন্য বাকি র্যামটি নিখরচায় রেখে যায়। আমাদের সুবিধাযুক্ত ডোমেনটি কেবলমাত্র একটি সিপিইউ কোরে সীমাবদ্ধ করা আমাদের পক্ষে সাধারণ।
সুতরাং আমি এখানে, কোডটি লিখছি যা একেবারে নতুন $ 6 কে সার্ভারে চলবে এবং প্রতিটি প্রোগ্রামকে 100 কেবি বরাদ্দ সিলিংয়ের মধ্যে (আদর্শভাবে) কাজ করতে হবে, বা গতিশীল মেমরির বরাদ্দ সম্পূর্ণরূপে রোধ করতে হবে।
সংক্ষিপ্তভাবে, আমি এর জন্য অপ্টিমাইজ করছি:
- স্মৃতি পদচিহ্ন
- প্রকারভেদ (যেখানে আমার কোডটির বেশিরভাগ সময় তার বেশিরভাগ সময় ব্যয় করে)
লকগুলির জন্য অপেক্ষা করতে, I / O এর জন্য অপেক্ষা করা বা সাধারণভাবে অপেক্ষা করার সময় ব্যয় করার সময় আসার সময় আমাকে অত্যন্ত পরিশ্রমী হতে হবে। আমার সময়ের প্রচুর পরিমাণ বিদ্যমান নন-ব্লকিং সকেট লাইব্রেরিগুলিকে উন্নত করতে এবং লক ফ্রি প্রোগ্রামিংয়ের আরও ব্যবহারিক পদ্ধতিগুলি অনুসন্ধান করতে চলেছে।
প্রতিদিন আমি এটি একটি বিড়ম্বনাজনক দেখতে পেলাম যে প্রযুক্তির অগ্রগতির কারণে গত মাসে কেনা সিস্টেমগুলিতে আমি 15 বছর আগে করেছি ঠিক তেমন কোড লিখছি ।
এম্বেড থাকা প্ল্যাটফর্মগুলিতে কাজ করা যে কারও পক্ষে এটি সাধারণ, যদিও তাদের অনেকেরই কমপক্ষে 1 জিবি রয়েছে have জেসন যেমন উল্লেখ করেছেন, মোবাইল ডিভাইসে চালানোর জন্য প্রোগ্রাম লেখার সময় এটিও সাধারণ is তালিকাটি চলে যায়, কিওস্কস, পাতলা ক্লায়েন্ট, ছবির ফ্রেম ইত্যাদি ..
আমি ভাবতে শুরু করেছি যে হার্ডওয়্যার বিধিনিষেধগুলি প্রকৃতপক্ষে এমন প্রোগ্রামারদের থেকে পৃথক করে যারা এটি যা খায় তা যত্ন না নিয়েই কিছু কাজ করতে পারে। আমি উদ্বিগ্ন (যদি আপনাকে অবশ্যই নিচে আমাকে ভোট দিন) এমন কোন ভাষাগুলি যা সম্পূর্ণ বিমূর্ত প্রকারের এবং স্মৃতিচারণের সাধারণ জ্ঞানের সমষ্টি যা বিভিন্ন বিভাগের প্রোগ্রামারদের মধ্যে ভাগ করে নেওয়া হয়েছে তা পরীক্ষা করে।