Minecraft লগে সবচেয়ে সাধারণ তিনটি ল্যাগ বার্তার মানে এক নয়: Can't keep up! Is the server overloaded? মানে তোমার সার্ভার চলতে থাকে, কিন্তু তাল মেলাতে পারে না। A single server tick took 60.00 seconds মানে বিল্ট-ইন জরুরি ব্রেক তাকে জোর করে বন্ধ করেছে। Exception in server tick loop মানে একটি নির্দিষ্ট প্রোগ্রাম ত্রুটি গেম লুপ ভেঙে দিয়েছে। যে তিনটাকেই একভাবে সামলায়, সে সাধারণত ভুল জিনিস ঠিক করে।

তিনটি বার্তা আলাদা করে বোঝা

Minecraft প্রতি সেকেন্ডে 20 বার গেম ওয়ার্ল্ড হিসাব করে। এমন একেকটি রাউন্ডকে Tick বলা হয় এবং এটি সর্বোচ্চ 50 মিলিসেকেন্ড সময় নিতে পারে। তুমি যে ল্যাগই অনুভব করো, সবই এই একটি সংখ্যার থেকে বিচ্যুতি।

লগ বার্তা আসলে কী ঘটেছে সার্ভার কি এখনও চলছে?
Can't keep up! Is the server overloaded? Running 5074ms or 101 ticks behind Tick 50 ms-এর বেশি সময় নিচ্ছে, সার্ভার জমে থাকা কাজ শেষ করার চেষ্টা করছে হ্যাঁ, কিন্তু স্পষ্টভাবে ধীর
A single server tick took 60.00 seconds + Considering it to be crashed একটি Tick max-tick-time ছাড়িয়েছে; Watchdog প্রক্রিয়াটি বন্ধ করেছে না, জোর করে বন্ধ হয়েছে
Exception in server tick loop একটি ত্রুটি মূল লুপ পর্যন্ত পৌঁছে গেছে না, সাধারণত Crash-Report সহ
Dispatched async TPS command (Paper সতর্কতা) আমাদের নিজস্ব TPS মাপার ব্যবস্থা বাইরে থেকে সার্ভারকে জিজ্ঞেস করছে হ্যাঁ — এটা স্বাভাবিক

শেষ লাইনটি নিয়মিত বিভ্রান্ত করে: Paper বাইরে থেকে আসা প্রতিটি অনুরোধকে সতর্কতা হিসেবে দেখায়। এটি প্রায় প্রতি পাঁচ মিনিটে আমাদের পরিকল্পিত পারফরম্যান্স মাপা, কোনো ত্রুটি নয় এবং তোমার গেমে কোনো হস্তক্ষেপ নয়।

সবচেয়ে গুরুত্বপূর্ণ কাজ: Watchdog বার্তা দেখলে উপরের লাইনগুলো পড়ো

Watchdog-Kill একটি উপসর্গ, কারণ নয়। এটি শুধু বলে: কিছু একটা অনুমোদিত সময়ের চেয়ে বেশি সময় ধরে সার্ভার থ্রেড ব্লক করেছে। কী ব্লক করেছে, তা অন্য জায়গায় লেখা থাকে।

দুটি ঘটনা হতে পারে, আর সেগুলোর সমাধান সম্পূর্ণ আলাদা:

ঘটনা 1 — Watchdog আগে এসেছে। Watchdog লাইনের আগে স্বাভাবিক গেম চলার লগ আছে। তখন Tick সময়টাই আসল বার্তা: চলমান অবস্থায় কিছু সার্ভারকে ফ্রিজ করেছে।

ঘটনা 2 — Watchdog পরে এসেছে। Watchdog লাইনের আগে ইতিমধ্যেই Stopping server বা Preparing crash report আছে। তখন সার্ভার আগেই মৃত ছিল বা বন্ধ হচ্ছিল, আর Watchdog শুধু আটকে থাকা বন্ধ হওয়ার কাজ সরিয়ে দিয়েছে।

এই দ্বিতীয় ঘটনাটি বিরল নয়। 22 আগস্ট 2026-এর একটি সাপোর্ট কেসে সার্ভার থ্রেড 13:20:15-এ ক্র্যাশ করেছিল, পরিষ্কারভাবে Stopping server শুরু করেছিল — আর মাত্র 60 সেকেন্ড পরে Watchdog চালু হয়। সেখানে যে Tick সময়কে কারণ বলে ধরে, সে অপারেটরকে আসল ত্রুটি বার্তা থেকে দূরে পাঠায়, যা এক মিনিট উপরে ছিল। ঠিক সেই কারণেই আমাদের কনসোল বিশ্লেষণ Watchdog হিট ইচ্ছাকৃতভাবে শেষে মূল্যায়ন করে: একই লগ অংশে যদি আরও নির্দিষ্ট সিগনেচার থাকে, তুমি সেই বক্তব্য দেখবে, „একটি Tick ধীর ছিল“ নয়।

ধাপে ধাপে কারণ খুঁজে বের করা

1. প্যানেলে TPS ইতিহাস পরীক্ষা করো

প্যানেলে তোমার সার্ভার খুলো। „Performance (letzte 24h)“-এর নিচে তুমি TPS ইতিহাস দেখবে; সার্ভার চলতে থাকলে প্রায় প্রতি পাঁচ মিনিটে এটি মাপা হয়। গ্রাফের আকারই অনেক কিছু বলে দেয়:

  • নির্দিষ্ট সময়ে তীক্ষ্ণ পতন → একটি ঘটনা। সময়টি লগের সঙ্গে মিলিয়ে দেখো: ওয়ার্ল্ড জেনারেশন, ব্যাকআপ, অনাবিষ্কৃত এলাকায় কোনো প্লেয়ার, কোনো Plugin-Task।
  • দীর্ঘ সময় ধরে কম মান → কাঠামোগত ওভারলোড। এখানে রিস্টার্ট নয়, লোড কমানো দরকার।
  • করাত-দাঁতের মতো প্যাটার্ন → সাধারণত মেমরি চাপ: সার্ভার কাজ করে, Garbage Collection থামায়, আবার একই ঘটনা ঘটে।

মানগুলো দীর্ঘ সময় কম থাকলে প্যানেল নিজে থেকেই „TPS dauerhaft niedrig“ ইঙ্গিত দেখায়।

2. MSPT মাপো — শুধু TPS যথেষ্ট নয়

কনসোলে /spark tps দাও। কমান্ডটি দুটি সংখ্যা দেয়, আর দ্বিতীয়টি বেশি গুরুত্বপূর্ণ:

  • TPS — প্রতি সেকেন্ডে Tick, সর্বোচ্চ 20।
  • MSPT — প্রতি Tick-এ মিলিসেকেন্ড। 50 ms পর্যন্ত সব ঠিক আছে।

MSPT কেন? Bukkit, Spigot এবং Paper সার্ভার প্রক্রিয়া ধীর করে, যাতে ক্র্যাশ এড়ানো যায়। ফলে ডিসপ্লেতে মসৃণ 20 TPS দেখা যেতে পারে, অথচ বাস্তবে সার্ভার অনেক আগেই সীমায় কাজ করছে। 45 ms MSPT মানে: একটি Mob-Farm হলেই দৃশ্যমান ল্যাগ শুরু হবে — TPS ডিসপ্লে এখনও নিখুঁত দেখালেও।

Paper 1.21 থেকে spark আগে থেকেই থাকে, তোমাকে কিছু ইনস্টল করতে হবে না।

3. কারণকারীকে প্রোফাইল করো

কোন Plugin দোষী আন্দাজ করো না — মাপো:

/spark profiler start --timeout 120

এই দুই মিনিটে যে পরিস্থিতিতে ল্যাগ হয়, সেটি আবার তৈরি করো। এরপর সার্ভার যে ফলাফলের লিংক দেয়, সেটি খুলো। রিপোর্ট সময়ের অংশ অনুযায়ী সাজিয়ে দেখায় Tick সময় কোথায় যাচ্ছে: কোনো নির্দিষ্ট Mod, কোনো Plugin-Task, Chunk লোডিং, Entity প্রসেসিং বা Garbage Collection।

এটাই সেই জায়গা, যেখানে এই গাইড „আরও RAM কিনো“ থেকে আলাদা। Profiler সেই প্রশ্নের উত্তর দেয়, যা কোনো সুপারিশ টেবিল দিতে পারে না: তোমার সার্ভারে ঠিক কোন জিনিস সময় খাচ্ছে?

4. নির্দিষ্টভাবে লোড কমাও

Profiler যা দেখায়, সেটাই ব্যবস্থা নির্ধারণ করে:

Profiler যা দেখায় কার্যকর ব্যবস্থা
Chunk লোডিং, ওয়ার্ল্ড জেনারেশন simulation-distance কমাও (Default 10, Minimum 3) — এটি view-distance-এর চেয়ে বেশি প্রভাব ফেলে, কারণ শুধু সিমুলেটেড Chunks-ই গণনার সময় খরচ করে
Entity প্রসেসিং Mob-Farm সীমিত করো, প্রাণীকে খোলা ছেড়ে না দিয়ে ঘেরাও করো, Item জমাট পরিষ্কার করো
Redstone / Block-Ticks Repeater লুপের বদলে Observer দিয়ে Redstone ঘড়ি বানাও, সবসময় চলা সার্কিট বন্ধ করো
একক Plugin বা Mod পরীক্ষার জন্য নিষ্ক্রিয় করে আবার মাপো; বিকল্প বা নতুনতর ভার্সন খুঁজো
Garbage Collection এখন আরও RAM সঠিক উত্তর — এর আগে নয়

শেষ পয়েন্টটি গুরুত্বপূর্ণ: RAM শুধু মেমরি সমস্যা ঠিক করে। যদি একটি Redstone ঘড়ি Tick সময় খেয়ে ফেলে, বড় ট্যারিফ সার্ভারকে দ্রুত করবে না। তোমার প্লেয়ার সংখ্যা ও Modpack আকার অনুযায়ী কত RAM দরকার, তা আমাদের Minecraft-RAM-Rechner হিসাব করে দেয়।

5. max-tick-time — ব্যতিক্রম, সমাধান নয়

মানটি server.properties-এ থাকে এবং কোন Tick সময় থেকে Watchdog হস্তক্ষেপ করবে তা নির্ধারণ করে। ডিফল্ট হলো 60000 মিলিসেকেন্ড, অর্থাৎ 60 সেকেন্ড। মানটি ছাড়ালে সার্ভার নিজেই নিজেকে বন্ধ করে।

নেটে অনেক গাইড এই জায়গায় -1 দিয়ে Watchdog বন্ধ করার পরামর্শ দেয়। এটাকে ডিফল্ট সমাধান হিসেবে করো না। Watchdog-ই একমাত্র বিল্ট-ইন ব্যবস্থা, যা সত্যিকারের Deadlock আদৌ বুঝতে পারে। -1 দিলে মৃত সার্ভার ঘণ্টার পর ঘণ্টা পোর্টে ঝুলে থাকবে: প্লেয়ার ঢুকতে পারবে না, লগে কিছু ব্যাখ্যা করবে না কেন, আর কেউ সতর্ক হবে না। তুমি সতর্কবার্তা সরিয়েছ, সমস্যা নয়।

বাড়ানোর জন্য ঠিক একটাই ভালো কারণ আছে: পরিচিত কোনো প্রক্রিয়া বৈধভাবে দীর্ঘ সময় নিচ্ছে। ক্লাসিক উদাহরণ হলো বড় Modpack-এর প্রথম স্টার্ট, যেখানে ওয়ার্ল্ড জেনারেশন এবং Mod ইনিশিয়ালাইজেশন মিলে এক Tick-এ এক মিনিটের বেশি সময় কাটায়। তখন 180000 (তিন মিনিট)-এর মতো একটি মান গ্রহণযোগ্য — সাময়িকভাবে, এবং প্রথম সফল স্টার্টের পর এটি রিসেট করার উদ্দেশ্য নিয়ে।

লগে Exception in server tick loop থাকলে

এই বার্তাটি তিনটির মধ্যে সবচেয়ে সহজ, কারণ এটি নিজের কারণ সঙ্গে দেয়। এর ঠিক নিচে বা কয়েক লাইন পরে একটি Caused by: লাইন থাকে — সেখানেই আসল ত্রুটি থাকে, সাধারণত দায়ী Mod বা Plugin-এর নামসহ।

পদ্ধতি:

  1. Caused by: খুঁজে ক্লাসের নাম লিখে রাখো।
  2. এতে যদি কোনো Mod বা Plugin-এর নাম থাকে, কারণকারী চিহ্নিত।
  3. ত্রুটিটি যদি কোনো পরিবর্তনের পরে ঘটে (নতুন Mod, আপডেট, নতুন ওয়ার্ল্ড), প্রথমে সেই পরিবর্তন ফিরিয়ে দাও।
  4. ত্রুটি অস্পষ্ট থাকলে সম্পূর্ণ অংশটি সাপোর্টে দাও — সময়সহ।

তোমার সার্ভারের কনসোল বিশ্লেষণ এই লাইনগুলো স্বয়ংক্রিয়ভাবে চিনে ফেলে এবং প্রতিটি শনাক্ত বার্তা পরিষ্কার ভাষায় ব্যাখ্যা করে, কতবার ঘটেছে তাও দেখায়। তোমার কাছে যদি শুধু অন্য কোথাও থেকে পাওয়া লগ অংশ থাকে, সেটি আমাদের Crash-Report-Analyzer-এ পেস্ট করতে পারো — আমাদের কাছে সার্ভার না থাকলেও।

আমরা তোমার জন্য স্বয়ংক্রিয়ভাবে যা করি

  • কোনো কাজ ছাড়াই পারফরম্যান্স মাপা। TPS প্রায় প্রতি পাঁচ মিনিটে সংগ্রহ করা হয় এবং 24 ঘণ্টা প্যানেলে দেখানো হয় — এর জন্য তোমাকে কোনো Plugin ইনস্টল করতে হবে না।
  • দীর্ঘস্থায়ী দুর্বলতায় সতর্কতা। নির্ভরযোগ্য সময়সীমা জুড়ে পারফরম্যান্স কম থাকলে তুমি ইঙ্গিত পাবে, নিজে টের পাওয়ার অপেক্ষা করতে হবে না।
  • ব্যাখ্যাসহ লগ লাইন। শনাক্ত বার্তাগুলো কারণ ও সমাধান পরিষ্কার ভাষায় পায়, তোমার ভাষায় — আর যেখানে উপযুক্ত গাইড আছে, সেখানে তার লিংক থাকে।
  • উপসর্গের আগে কারণ নিয়ম। একই লগ অংশে Watchdog-Kill-এর চেয়ে বেশি অর্থবহ ত্রুটি বার্তা থাকলে, আমরা সেটিই দেখাই।

Troubleshooting: উপসর্গ, পরীক্ষা, সমাধান

উপসর্গ পরীক্ষা সম্ভাব্য সমাধান
শুধু নতুন এলাকা ঘোরার সময় ল্যাগ প্লেয়ার অনাবিষ্কৃত এলাকায় গেলে কি এটা ঘটে? ওয়ার্ল্ড জেনারেশন; simulation-distance কমাও, ওয়ার্ল্ড আগে থেকে জেনারেট করাও
নির্দিষ্ট সময়ে ল্যাগ সময়টি পরিকল্পিত কাজের সঙ্গে মিলিয়ে দেখো ব্যাকআপ বা রিস্টার্ট পরিকল্পনার সময় সরাও
সার্ভার ত্রুটি ছাড়া থামে, লগ হঠাৎ শেষ শেষে কি A single server tick took আছে? Watchdog-Kill; তার আগের মিনিট পড়ো
TPS 20 দেখায়, তবু ঝাঁকুনি লাগে /spark tps — MSPT দেখো TPS-Limiter লোড ঢেকে রাখছে; MSPT দেখে সিদ্ধান্ত নাও
কোনো Mod যোগ করার পর Mod সরিয়ে আবার মাপো Mod সংঘাত বা বেশি লোড নেওয়া Mod
TPS ইতিহাসে করাত-দাঁত Profiler দিয়ে Garbage Collection পরীক্ষা করো মেমরি চাপ; RAM বাড়াও
লগে „Dispatched async TPS command“ শুধু এই লাইন, অন্য সব স্বাভাবিক কিছু করার নেই — আমাদের মাপা

FAQ

কোন TPS মান থেকে প্লেয়াররা কিছু টের পায়?

প্রায় 18 TPS পর্যন্ত গেমে কিছু বোঝা যায় না। 15-এর নিচে স্পষ্ট ধীর লাগে। তবে শুধু এর ওপর ভরসা করো না: MSPT-ও পরীক্ষা করো, কারণ TPS-Limiter সুস্থ সংখ্যা দেখাতে পারে, অথচ সার্ভার ইতিমধ্যেই সীমায় কাজ করছে।

বেশি RAM কি ল্যাগ কমায়?

শুধু তখনই, যখন মেমরিই সত্যিকারের বাধা। Profiler যদি Garbage Collection-কে প্রধান অংশ হিসেবে দেখায়, হ্যাঁ। যদি Redstone ঘড়ি বা Mob-Farm দেখায়, বেশি RAM কিছু বদলায় না। আগে মাপো, তারপর কিনো।

Watchdog বন্ধ করব?

না, স্থায়ীভাবে নয়। -1 তোমার কাছ থেকে সত্যিকারের ফ্রিজ হওয়ার একমাত্র স্বয়ংক্রিয় শনাক্তকরণ কেড়ে নেয়। প্রথম Modpack স্টার্টের মতো পরিচিত ধীর প্রক্রিয়ার জন্য max-tick-time সাময়িকভাবে বাড়ানো গ্রহণযোগ্য — এরপর রিসেট করো।

„Stopping server“-এর পরে Watchdog বার্তা কেন আসে?

কারণ সার্ভার ইতিমধ্যেই বন্ধ হচ্ছিল এবং সেখানে আটকে গিয়েছিল। Watchdog তখন আটকে থাকা বন্ধ হওয়া সরিয়ে দিয়েছে, চলমান সার্ভারকে মেরে ফেলেনি। কারণটি Stopping server-এর আগে থাকে।

রিস্টার্ট কি সাহায্য করে?

তাৎক্ষণিক জমে থাকা কাজের বিরুদ্ধে হ্যাঁ, কারণের বিরুদ্ধে নয়। প্রতিটি রিস্টার্টের কিছুক্ষণের মধ্যেই ল্যাগ ফিরে এলে, এটি কাঠামোগত — তখন শুধু মাপাই এগিয়ে নিয়ে যায়।

view-distance আর simulation-distance-এর পার্থক্য কী?

view-distance নির্ধারণ করে প্লেয়ার কত দূর দেখতে পাবে; simulation-distance নির্ধারণ করে ওয়ার্ল্ড কত দূর সত্যিই হিসাব করা হবে। দুটিই ডিফল্টভাবে 10 Chunks। যেহেতু শুধু সিমুলেটেড Chunks গণনার সময় খরচ করে, simulation-distance কমালে কম দৃশ্যমান ক্ষতিতে বেশি লোড কমে।

এখনও ল্যাগ থাকলে

সাপোর্টে জিজ্ঞেস করার আগে তিনটি জিনিস জোগাড় করো: শেষ ঘটনার নির্দিষ্ট সময়, তোমার spark-Profiler রিপোর্টের লিংক, এবং সর্বশেষ কোন Mods বা Plugins যোগ হয়েছে তার তথ্য। এতে সাধারণ অপ্টিমাইজেশন রাউন্ড চালানোর বদলে লগের ঠিক অংশটি লক্ষ্য করে পরীক্ষা করা যায়।

সব গেমের জন্য সাধারণ সেটিংস — রিস্টার্ট পরিকল্পনা, ট্যারিফ নির্বাচন, নেটওয়ার্ক — তুমি Gameserver-Performance verbessern গাইডে পাবে। Mods এবং Plugins কীভাবে পরিষ্কারভাবে ইনস্টল ও সরাতে হয়, তা Minecraft-Mods und Plugins installieren-এ আছে।

তুমি এমন একটি সার্ভার চাও, যেখানে TPS মাপা, লগ ব্যাখ্যা এবং সতর্কতা অতিরিক্ত কাজ ছাড়াই থাকে? Minecraft-Server mieten-এ তুমি উপযুক্ত ট্যারিফ পাবে।

উৎস এবং পরীক্ষার অবস্থা

  • max-tick-time, Tickrate এবং দূরত্ব: PaperMC — server.properties. 60000 মিলিসেকেন্ডের ডিফল্ট মান, ছাড়ালে জোর করে বন্ধ হওয়া, -1 দিয়ে নিষ্ক্রিয় করা, এবং view-distancesimulation-distance-এর ডিফল্ট 10 মান নথিভুক্ত করে।
  • spark Paper-এ অন্তর্ভুক্ত: PaperMC — Profiling. Paper 1.21 থেকে আলাদা ডাউনলোড দরকার নেই।
  • TPS-এর আগে MSPT: spark — TPS and MSPT. ব্যাখ্যা করে কেন TPS-Limiter মসৃণ 20 দেখাতে পারে, অথচ বাস্তবে সার্ভার ধীর চলে।
  • Profiler কমান্ড: spark — Command Usage. /spark profiler start --timeout <sekunden> এবং /spark profiler stop-এর উৎস।

পরীক্ষার অবস্থা: 24 আগস্ট 2026। নতুন সার্ভার ভার্সনের সঙ্গে ডিফল্ট মান ও কমান্ড বদলাতে পারে; সন্দেহ হলে লিংক করা নির্মাতার ডকুমেন্টেশন পরীক্ষা করো।