আপনার যদি একটি ভার্চুয়াল প্রাইভেট সার্ভার, বা ডেডিকেটেড সার্ভার দরকার হয়, তবে আপনার কাছে অনেক অপশন আছে। এবং কারণ মার্কেট ফ্লাডেড এবং ধারাবাহিক বিবর্তনশীল, সবার জন্য কোনো "সেরা একটা" নেই—অথবা কমপক্ষে, সব কিছুর জন্য কোনো "সেরা একটা" নেই।
কিছু ক্লাউড প্রোভাইডার ভার্চুয়াল প্রাইভেট সার্ভার দিতে পারে সবচেয়ে ফাস্ট স্টোরেজের সাথে, কিন্তু তাদের CPU পাওয়ার সেটি গ্রেট নয়। অন্য একটি প্রোভাইডার মার্কেটে সেরা CPU পারফরম্যান্স অফার করতে পারে, কিন্তু তাদের স্টোরেজ ডিভাইসগুলো স্লোওয়ার। আরও, সবাই আপনার প্রতিযোগীদের ক্লায়েন্ট চুরি করার চেষ্টা করছে, স্লো স্টোরেজ والা প্রোভাইডার আপগ্রেড করতে পারে তাদের ডিভাইস এবং ছয় মাস পর তাদের মার্কেটে সেরা হতে পারে। কিন্তু, বেঞ্চমার্কের মাধ্যমে, আপনি বিভিন্ন প্রোভাইডার তুলনা করতে পারেন এবং এই মুহূর্তে আপনার জন্য সেরা কী সেটি বেছে নিতে পারেন।
বেঞ্চমার্কিং সম্পর্কে কিছু কথা
সাধারণত, আপনি আপনার স্পেসিফিক ইউজ কেস, হার্ডওয়্যার সহ বেঞ্চমার্ক আডাপ্ট করবেন, এবং দেখবেন আপনি আপনার ডিভাইস থেকে কতটুকু নিচোড়ে বের করতে পারেন, তাদের সর্বোচ্চ পারফরম্যান্স লেভেল। তবে, এই কেসে আপনি জেনেরিক টেস্টগুলো রান করবেন যেগুলো হয়তো আbsolutely সব পোটেনশিয়াল নিচোড়ে বের করবে না। কিন্তু যেহেতু সেগুলো একই প্যারামিটার এবং একই অপারেটিং সিস্টেমে রান করবে, আপনি রিয়েল নম্বর পাবেন যেগুলো আপনি সহজে তুলনা করতে পারবেন এবং দেখতে পারবেন কোন প্রোভাইডার অন্যের চেয়ে ভালো বা খারাপ পারফর্ম করছে একই সিচুয়েশনে।
পূর্বশর্তসমূহ
- অপারেটিং সিস্টেম হিসেবে লেটেস্ট উবুন্টু স্টেবল ইমেজ ব্যবহার করুন। লেখার সময় এটি ১৮.০৪ LTS। পরে আপনি অন্য অপারেটিং সিস্টেম ব্যবহার করুন কোন সমস্যা নেই। এটি আপনাকে একটি কমন স্টার্টিং পয়েন্ট দেবে।
- আপনি এই টিউটোরিয়ালের কিছু কমান্ড আডাপ্ট করতে পারেন। আপনি যদি তা করেন, তবে সকল সার্ভারে একই প্যারামিটার ব্যবহার করতে ভুলবেন না সঠিক তুলনার জন্য।
- প্রতিটি সার্ভারে একই বেঞ্চমার্ক দুবার চালানো একটি ভালো আইডিয়া। কিছু ক্লাউড প্রোভাইডার ইনকনসিস্টেন্ট রেজাল্ট দেয়। এই কেসে আপনাকে সেগুলো এড়াতে হবে কারণ এটি ইন্ডিকেট করে যে তাদের গেস্ট ওএস আইসোলেশন সেটি ভালো নয়, অথবা তারা একই হার্ডওয়্যারে অনেক ক্লায়েন্ট নিচ্ছে।
- টিউটোরিয়াল অনুমান করে আপনি রুট হিসেবে লগইন করেছেন। আপনি যদি একটি রেগুলার ইউজার হিসেবে লগইন করে থাকেন, তবে সকল
aptকমান্ডের সাথে sudo প্রিফিক্স করতে হবে যাতেapt update && apt install fioযেনsudo apt update && sudo apt install fioহয়।
সার্ভার স্টোরেজ বেঞ্চমার্ক
প্রথমে, বেঞ্চমার্কিং সফটওয়্যার ইনস্টল করুন।
apt update && apt install fio
আপনি যদি পান যে fio পাওয়া যাচ্ছে না, এর মানে আপনার universe রিপোজিটরি সক্ষম নেই। আপনি apt install software-properties-common && add-apt-repository universe দিয়ে সেটি সক্ষম করতে পারেন এবং তারপর উপরের কমান্ডটি রিপিট করে fio ইনস্টল করুন।
এক সিকোয়েনশিয়াল রিড হয় যখন ডেটা কন্টিগুয়াসলি পড়া হয়। উদাহরণস্বরূপ, আপনি একটি ৪GB ফাইল শুরু থেকে শেষ পর্যন্ত পড়লে, এটি সাধারণত আপনার স্টোরেজ ডিভাইস এবং বর্তমানে ব্যবহার করা ফাইলসিস্টেমের সাথে সম্ভব সর্বোচ্চ রিড স্পিড দেখাবে। আপনি একটি সিকোয়েনশিয়াল রিড টেস্ট রান করতে পারেন:
fio --name=seqread --readwrite=read --direct=1 --ioengine=libaio --bs=1M --size=2000M
যদি এটি بیস সেকেন্ডের কমে শেষ হয় (এটি সাধারণত হয় যদি স্টোরেজ SSD-এ থাকে), তবে আপনাকে পড়া হচ্ছে ফাইলের আকার বাড়াতে হবে আরও সঠিক রেজাল্ট পাওয়ার জন্য নিচের লাইন কোডের মত।
fio --name=seqread --readwrite=read --direct=1 --ioengine=libaio --bs=1M --size=8000M
এই রেজাল্টে আপনার যে সবচেয়ে গুরুপূর্ণ নম্বরগুলো খেয়াল রাখতে হবে, সেগুলো হলো READ: bw, নিচের ছবিতে হাইলাইট করা হয়েছে।

সিকোয়েনশিয়াল রাইট স্পিড টেস্ট করার জন্য, রান করুন:
fio --name=seqwrite --readwrite=write --direct=1 --ioengine=libaio --bs=1M --size=2000M
উপরের মত একই নম্বরগুলো চেক করুন।
আপনার ক্লাউড স্টোরেজ সবচেয়ে স্ট্রেসফুল কন্ডিশনে কীভাবে পারফর্ম করে তা টেস্ট করতে, এই টেস্টটি রান করুন:
fio --name=randrw --readwrite=randrw --direct=1 --ioengine=libaio --bs=4k --size=200M --group_reporting --numjobs=8
উপরের মতই, --size বাড়ান যদি টেস্টটি খুব দ্রুত শেষ হয়। এই কেসে, ব্যান্ডউইথ কম গুরুত্বপূর্ণ—এটিকে সেকেন্ডারি বিবেচনা করুন।
প্রথমে, read: IOPS এবং write: IOPS-এ তাকান।

একটি রিয়েল-ওয়ার্ল্ড উদাহরণ হিসেবে, সার্ভারের স্টোরেজ এইরকম স্ট্রেস পাবে একটি খুব ব্যস্ত ওয়েবসাইটে খুব বড় ডাটাবেসের সাথে যা কনস্ট্যান্টলি পড়া এবং লেখা হচ্ছে।
সার্ভার CPU এবং মেমরি বেঞ্চমার্ক
Geekbench-এর ডাউনলোড পেজে যান। লেটেস্ট Geekbench আর্কাইভের লিঙ্ক কপি করে wget কমান্ডে পেস্ট করুন। উদাহরণস্বরূপ, লেখার সময় এই লিঙ্কটি "https://cdn.geekbench.com/Geekbench-4.3.3-Linux.tar.gz"। নিচের কমান্ড Geekbench আপনার সার্ভারে ডাউনলোড করবে।
wget https://cdn.geekbench.com/Geekbench-4.3.3-Linux.tar.gz
আর্কাইভ থেকে ফাইলগুলো এক্সট্র্যাক্ট করুন।
tar -xzvf *.tar.gz

এক্সট্র্যাক্ট করা ডিরেক্টরিতে যান, যা প্রোগ্রাম ভার্সনের সমতুল্য হবে যা আপনি উপলব্ধ পেয়েছেন এবং পূর্বের কমান্ডে আউটপুট হয়েছিল (উপরের ছবির মত)।
cd Geekbench-4.3.3-Linux
লেখার সময় এক্সিকিউটেবল ফাইলের নাম geekbench4, কিন্তু এটি ভবিষ্যতে পরিবর্তন হতে পারে। বর্তমান ডিরেক্টরির ফাইলগুলো লিস্ট করুন।
ls

বেঞ্চমার্ক রান করুন, প্রয়োজনে এক্সিকিউটেবলের নাম রিপ্লেস করে।
./geekbench4
সকল টেস্ট শেষ হওয়ার পর্যন্ত কিছুক্ষণ লাগবে। শেষে আপনাকে একটি লিঙ্ক অফার করা হবে যেখানে আপনি রেজাল্ট দেখতে পারেন।

সার্ভারের নেটওয়ার্ক ব্যান্ডউইথ বেঞ্চমার্ক
Speedtest ক্লায়েন্ট ইনস্টল করুন।
apt install speedtest-cli
বেঞ্চমার্ক রান করুন।
speedtest

সাধারণত, ইউটিলিটি আপনার সার্ভারের যতটা সম্ভব কাছের একটি টেস্ট সার্ভার খুঁজে বের করবে। লোকেশন ডিটেকশন ফেল করলে, আপনি ম্যানুয়ালি আপনার দেশের সার্ভার লিস্ট করতে পারেন একটি কমান্ড দিয়ে:
speedtest --list | grep -i germany
লিস্ট থেকে নম্বরটি সিলেক্ট করুন, এবং পরবর্তী কমান্ডে পাস করুন নিচের কোড লাইনের মত।
speedtest --server 4462
নোট করুন যে speedtest দ্বারা ব্যবহৃত কিছু সার্ভার ওই মুহূর্তে অনেক ব্যান্ডউইথ নাও থাকতে পারে, তাই যদি বেঞ্চমার্ক খুব কম মান রিটার্ন করে, তবে একটি ভিন্ন আপলোড/ডাউনলোড সার্ভার ট্রাই করুন।
উপসংহার
এটি CPU, মেমরি, স্টোরেজ এবং নেটওয়ার্কের বেসিক বেঞ্চমার্কিং কভার করে। প্রতিটি টেস্টের পর, আপনার কাছে নম্বর থাকবে যেগুলো তুলনা করে আপনি সে সার্ভার বেছে নিতে পারেন যেটির ভ্যালুগুলো আপনার স্পেসিফিক ওয়ার্কলোডের জন্য সেরা।