মানুষ ঘণ্টার পর ঘণ্টা vCPU-র সংখ্যা তুলনা করে, তারপর সার্ভারটি ভুল মহাদেশে রেখে দেয়। যেকোনো ইন্টারঅ্যাক্টিভ জিনিসের জন্য (শেল, API, গেম, এক্সচেঞ্জের সঙ্গে কথা বলা বট) অবস্থান প্রায়ই হার্ডওয়্যারের চেয়ে বেশি গুরুত্বপূর্ণ। সুখবর হলো: বিলম্ব মূলত পদার্থবিজ্ঞান, তাই টাকা দেওয়ার আগেই আপনি এটি অনুমান করতে ও মাপতে পারেন।
এক লাইনে পদার্থবিজ্ঞান
অপটিক্যাল ফাইবারে আলো প্রতি মিলিসেকেন্ডে প্রায় 200 কিমি চলে। তার সোজা পথে বসানো থাকে না আর প্রতিটি রাউটার কিছুটা যোগ করে, তাই একটি নির্ভরযোগ্য নিয়ম হলো বাস্তব দূরত্বের প্রতি 100 কিমিতে আসা-যাওয়ায় প্রায় 1 ms।
| পথ | সাধারণ আসা-যাওয়ার সময় |
|---|---|
| একই শহরের ভেতরে | 1–3 ms |
| ফ্রাঙ্কফুর্ট ↔ হেলসিঙ্কি | 20–25 ms |
| মধ্য ইউরোপ ↔ লন্ডন | 10–20 ms |
| ইউরোপ ↔ মার্কিন পূর্ব উপকূল | 80–100 ms |
| ইউরোপ ↔ মার্কিন পশ্চিম উপকূল | 140–170 ms |
| ইউরোপ ↔ সিঙ্গাপুর / টোকিও | 160–250 ms |
যত CPU-ই থাকুক, 200 ms-এর আসা-যাওয়া সারানো যায় না। আপনার ব্যবহারকারীরা টোকিওতে থাকলে জার্মানির সার্ভার যত দ্রুতই হোক, ধীর মনে হবে।
“কাছে” বলতে কী বোঝায় তা কাজের ওপর নির্ভর করে
ওয়েবসাইট বা API। আপনার বেশিরভাগ ব্যবহারকারীর কাছে। CDN স্ট্যাটিক ফাইলের দূরত্ব লুকিয়ে ফেলে, কিন্তু প্রথম HTML উত্তর, লগইন, API কল আর সব ডায়নামিক জিনিস তবুও মূল সার্ভার পর্যন্ত যায়।
ট্রেডিং বট। এক্সচেঞ্জের API সার্ভারের কাছে, আপনার কাছে নয়। আপনি কোথায় বসে আছেন তা অপ্রাসঙ্গিক; বট দিনে শত শত বার এক্সচেঞ্জের সঙ্গে কথা বলে। আর্বিট্রাজে প্রতি কয়েক মিলিসেকেন্ড গুরুত্বপূর্ণ; দিনে হাতেগোনা কয়েকটি অর্ডার দেওয়া বটের জন্য 30 ms কোনো পার্থক্য আনে না। আরও জানতে দেখুন ট্রেডিং বটের জন্য কম বিলম্বের VPS।
মডেল API ডাকা AI এজেন্ট। অবস্থান প্রায় গুরুত্বহীন। মডেলের উত্তর দিতে কয়েক সেকেন্ড লাগে; 30 ms-এর নেটওয়ার্ক শুধু গোলমাল। দাম আর গোপনীয়তা দেখে বাছুন।
গেম সার্ভার। খেলোয়াড়দের কাছে। ~60 ms-এর নিচে বেশিরভাগ গেমে ভালো লাগে; প্রতিযোগিতামূলক শুটার গেম আরও অনেক কম চায়।
রিমোট ডেস্কটপ আর SSH। আপনার কাছে। 150 ms বিলম্বে টাইপ করা যন্ত্রণাদায়ক।
নিজে মাপুন
নিজের মেশিন থেকে, বা আপনার ব্যবহারকারীদের কাছের কোনো সার্ভার থেকে, সম্ভাব্য অবস্থান পর্যন্ত পথটি পরীক্ষা করুন:
mtr -rwc 50 example.com
mtr প্রতিটি হপ ক্ষতি আর বিলম্বসহ দেখায়: একটি একক ping-এর চেয়ে অনেক বেশি কাজের, কারণ এতে বোঝা যায় দেরিটা কোথায় যোগ হচ্ছে।
VPS থেকে, আপনি আসলে যে পরিষেবার ওপর নির্ভর করেন সেটিকে ধাপে ধাপে ভাগ করে মাপুন:
curl -o /dev/null -s -w 'dns %{time_namelookup}s connect %{time_connect}s tls %{time_appconnect}s total %{time_total}s\n' \
https://api.example.com/health
connect মোটামুটি একটি নেটওয়ার্ক আসা-যাওয়া, tls হ্যান্ডশেক যোগ করে, আর total-এ সার্ভারের নিজস্ব প্রক্রিয়াকরণের সময় থাকে। যদি connect 2 ms আর total 900 ms হয়, তাহলে আপনার সমস্যা দূরত্ব নয়।
EQVPS কোথায় মানায়
আমাদের সার্ভার জার্মানি আর ফিনল্যান্ডে, এবং প্রতিটি অর্ডারে আপনি অবস্থান বাছেন। এটি পুরো ইউরোপের ব্যবহারকারীদের ভালোভাবে, মধ্যপ্রাচ্যকে মোটামুটি, আর ইউরোপীয় এক্সচেঞ্জ ও API এন্ডপয়েন্টকে খুব ভালোভাবে কভার করে। ফিনল্যান্ড পশ্চিম ইউরোপ থেকে কয়েক মিলিসেকেন্ড দূরে এবং নর্ডিক ও বাল্টিক দেশগুলোর একটু কাছে; বেশিরভাগ কাজের জন্য দুটোই চলে।
সত্যি বলতে: এশিয়া বা আমেরিকা মহাদেশে আমাদের কোনো অবস্থান নেই। আপনার ব্যবহারকারীরা যদি সেখানে থাকেন, তাহলে ইউরোপের সার্ভার প্রতিটি আসা-যাওয়ায় 80–250 ms যোগ করবে, এবং আপনার উচিত তাদের কাছাকাছি হোস্ট করা।
সংক্ষেপে
- ঠিক করুন সার্ভার সবচেয়ে বেশি কার সঙ্গে কথা বলে: ব্যবহারকারী, এক্সচেঞ্জ, API, না আপনি।
- একে সেটির কাছে রাখুন, প্রতি 100 কিমিতে ~1 ms হিসাব করে।
- মানচিত্রে ভরসা না করে
mtrআরcurl -wদিয়ে মাপুন। - দূরত্বের সমস্যা মেটাতে দ্রুততর CPU-তে টাকা খরচ করবেন না।
একই মেশিনের জন্য NAT প্ল্যান আর ডেডিকেটেড IP প্ল্যানের মধ্যে বাছাই করছেন? সেটি আলাদা প্রশ্ন: এই রইল এক প্রশ্নের পরীক্ষা।
মন্তব্য
এখনো কোনো মন্তব্য নেই। প্রথম হোন।