وقتی زمان پاسخگویی سیستم طولانی میشود و درخواستها با تأخیر پردازش میشوند، اولین قدم و مهمترین اقدام، عیب یابی سرور کند است. کند شدن سرور معمولاً ناشی از اشباع منابع سختافزاری (مانند پُر شدن ظرفیت CPU و RAM، درگیری بالای Disk I/O)، اختلالات شبکه (Packet Loss) و یا خطاهای نرمافزاری مثل کوئریهای سنگین دیتابیس است. برای رفع اصولی این مشکل، باید بهجای حدسوگمان، با بررسی وضعیت Load Average و لاگهای سیستم، گلوگاه (Bottleneck) را دقیقاً شناسایی کنید.
در این مقاله از ابر فردوسی، یک چکلیست گامبهگام و فنی برای تشخیص دلایل کند شدن سرور ارائه میدهیم و در ادامه به بررسی ابزارهای مانیتورینگ و کاربردیترین راهکارهای کوتاهمدت و بلندمدت برای رفع قطعی و لگ سرور خواهیم پرداخت.
فهرست مطالب
تشخیص اولیه کندی سرور

پیشاز هر اقدامی در فرایند عیب یابی سرور کند، باید مشخص کنید که گلوگاه اصلی در زیرساخت سرور است یا در مسیر ارتباطی (اینترنت کاربر). برای این کار، از دو ابزار زیر استفاده میکنیم:
- تست Ping: با پینگ کردن آیپی سرور، میزان تأخیر و پایداری شبکه را بررسی کنید. وجود Packet Loss نشاندهنده اختلال در مسیر است.
- دستور Traceroute/MTR: این ابزار مسیر عبور بستهها را گامبهگام نشان میدهد تا متوجه شوید تأخیر در کدام نود شبکه (Network Hop) رخ داده است.
اگر در هر دو تست مشکلی مشاهده نشد، یعنی زیرساخت شبکه کامپیوتری در سمت کاربر یا ISP سالم است و باید بهسراغ بررسی داخلی خود ماشین بروید. طبق مستندات Cloudflare، تفکیک مشکلات لایه شبکه از لایه اپلیکیشن، اولین قدم برای پاسخ به این سؤال است که چرا سرور کند شده است؟
بررسی منابع سختافزاری
اصلیترین دلیل کند شدن سرور اشباع منابع فیزیکی است. زمانی که درخواستها بیش از توان پردازش باشند، Bottleneck سرور رخ میدهد.
مصرف CPU و Load Average
اولین جایی که باید چک کنید، میزان درگیری پردازنده است. از کجا بفهمیم CPU سرور پر است؟
- استفاده از دستور top یا htop: این ابزارها درصد اشغال پردازنده توسط هر پروسس را نشان میدهند.
- بررسی Load Average: سه عدد نمایش داده شده (برای ۱، ۵ و ۱۵ دقیقه اخیر) باید متناسب با تعداد هستههای CPU باشند. اگر این اعداد از تعداد هستهها فراتر رود، سرور در صف انتظار پردازش قرار گرفته و دچار لگ سرور میشود.
مصرف RAM
کمبود حافظه موقت باعث میشود سیستمعامل به استفاده از Swap (حافظه دیسک به جای رم) روی آورد که سرعت بسیار پایینی دارد.
- بررسی وضعیت Memory: اگر میزان Free Memory نزدیک به صفر باشد و سیستم دائماً درحال جابهجایی داده بین RAM و Swap باشد، با عیب یابی سرعت پایین سرور متوجه خواهید شد که نیاز به ارتقا یا بهینهسازی مصرف حافظه دارید.
وضعیت دیسک و I/O
گاهی CPU و RAM آزاد هستند اما I/O Disk بالا باعث فریز شدن سیستم میشود.
- تأخیر در خواندن/نوشتن: اگر دیسک شما (بهویژه در دیتابیسهای سنگین) نتواند با سرعت مناسب دادهها را جابهجا کند، کل سیستم معطل میماند. استفاده از ابزار iostat برای تشخیص این وضعیت توصیه میشود.
طبق متدولوژی پیشنهادی متخصصان برای تحلیل سریع عملکرد، بررسی این سه منبع در ۶۰ ثانیه اول، اقدام اصلی در چک لیست عیب یابی سرور است.
برای درک بهتر وضعیت منابع به جدول زیر توجه کنید:
| منبع سختافزاری | ابزار بررسی | نشانه بحران |
|---|---|---|
| پردازنده | top / htop | Load Average بالاتر از تعداد هستهها |
| حافظه (RAM) | free -m | مصرف بالای Swap و کمبود Buffer/Cache |
| دیسک (I/O) | iostat / iotop | درصد بالای %util یا انتظار طولانی برای نوشتن |
بررسی شبکه و ارتباطات

گاهی اوقات منابع سیستم کاملاً آزاد هستند، اما شبکه کند سرور باعث میشود کاربران افت شدید سرعت را تجربه کنند. اگر برای شما هم سؤال پیش آمده که چرا سرور ناگهانی کند میشود؟ یکی از مقصرهای اصلی، اختلالات لایه شبکه است.
تأخیر (Latency) و قطعی (Packet Loss)
بالا رفتن Latency سرور (مدت زمان رفتوبرگشت اطلاعات) یا گم شدن بستههای داده (Packet Loss)، بهشدت روی سرعت پاسخگویی سرویسها تأثیر منفی میگذارد.
- راهکار: با مانیتورینگ مداوم شبکه و استفاده از دستوراتی مثل mtr یا traceroute، میتوانید بررسی کنید که آیا افت سرعت ناشی از ترافیک بالای شبکه است یا اختلال در مسیریابی شرکت ارائهدهنده اینترنت (ISP).
سلامت کارت شبکه
بخش مهمی از فرایند عیبیابی شبکه، بررسی سلامت فیزیکی و نرمافزاری رابط شبکه است. طبق راهنمای عیبیابی شبکه Red Hat، وجود خطاهایی مانند Dropped Packets (بستههای از دسترفته) در خروجی شبکه، زنگ خطری برای عملکرد سرور است.
- اقدام عملی: با استفاده از دستور ip -s link یا netstat -i در لینوکس، آمار خطاهای کارت شبکه را بررسی کنید.
- برای درک بهتر وظایف و ساختار این قطعه سختافزاری حیاتی، پیشنهاد میکنیم مقاله کارت شبکه چیست؟ راهنمای جامع NIC را در بلاگ ابر فردوسی مطالعه کنید.
بررسی نرمافزار و سرویسها
اگر در روند آموزش عیب یابی سرور مرحله به مرحله متوجه شدید سختافزار و شبکه در وضعیت پایداری قرار دارند، گلوگاه سیستم شما قطعاً در لایه نرمافزار و سرویسهای درحال اجرا است.
کندی دیتابیس (کوئریهای سنگین و عدم بهینهسازی)
پایگاه داده معمولاً اولین نقطهای است که زیر بار ترافیک بالا تسلیم میشود. کندی دیتابیس یکی از شایعترین مشکلات رایج سرورهای کند است. به گفتهی Datadog، بیشتر افت عملکردهای نرمافزاری ریشه در ساختار نامناسب دیتابیس دارد.
دلایل اصلی این مشکل عبارتند از:
- اجرای کوئریهای بدون ایندکس (Unindexed Queries)
- قفل شدن جداول داده (Table Locking) در تراکنشهای همزمان
- عدم بهینهسازی تنظیمات کش (Cache) پایگاه داده
بررسی لاگ سرور (خطاهای وبسرور و سرویسها)
اگر میپرسید چگونه سرور کند را سریع پیدا کنیم؟ جواب کوتاه این است: «به لاگها مراجعه کنید!». لاگها دفترچه خاطرات سیستم هستند و تمامی خطاها، کرشها (Crashes) و تأخیرها را ثبت میکنند.
- بررسی لاگ سرور وب (مانند Nginx یا Apache) میتواند خطاهای ۵۰۰ یا هشدارهای Timeout را نمایان کند.
- برای رفع کندی سرور لینوکس و ویندوز، در سیستمعامل لینوکس مسیر /var/log/ (بهویژه فایلهای syslog یا messages) و در ویندوز ابزار Event Viewer بهترین منابع برای کشف علت پنهان لگ و کندی نرمافزارها محسوب میشوند.
بررسی امنیت و حملات
گاهی اوقات دلیل کند شدن سرور، ترافیک کاربران واقعی یا خطاهای نرمافزاری نیست؛ بلکه پای مشکلات امنیتی و نفوذ به سیستم در میان است. اگر منابع سیستم بهطور ناگهانی و بدون هیچ دلیل منطقی درگیر شدهاند، باید سناریوهای مخرب را بررسی کنید.
۱- حملات سایبری و DDoS:
طبق مستندات امنیتی شرکت سیسکو (Cisco)، در حملات منع سرویس توزیعشده (DDoS)، مهاجمان با ارسال حجم عظیمی از درخواستهای جعلی و ترافیک غیرعادی، منابع حیاتی سیستم (مانند پهنای باند شبکه و پردازنده) را تا مرز اشباع پیش میبرند. این اتفاق باعث میشود سرور توانایی پاسخگویی به درخواستهای مشروع را از دست داده و دچار افت شدید سرعت یا قطعی کامل شود.
- بدافزارها و استخراجکنندگان ارز دیجیتال (Cryptominers):
اگر متوجه شدید که میزان مصرف پردازنده به طرز مشکوکی روی ۱۰۰٪ قفل شده است و هیچ پروسه آشنایی این بار را ایجاد نکرده، احتمالاً سرور شما میزبان بدافزارها شده است. این برنامههای مخرب در پسزمینه اجرا میشوند و تمام توان پردازشی سرور را برای اهداف خود میبلعند.
بررسی دقیق پورتهای باز، مانیتورینگ ترافیک ورودی و استفاده از فایروالهای قدرتمند، گامهای اساسی برای جلوگیری از این نوع کندیها هستند.
ابزارهای مانیتورینگ سرور
برای اینکه در فرایند پیدا کردن منشأ مشکل درگیر حدسوگمان نشوید، باید بدانید بهترین ابزار عیب یابی سرور چیست. پایش مداوم (Monitoring) کلید طلایی پیشگیری و رفع کندی سیستم است. طبق راهنمای رسمی اوبونتو (Ubuntu)، استفاده از ابزارهای مانیتورینگ به شما کمک میکند تا رفتار سیستم را تحلیل کرده و گلوگاهها را پیشاز تبدیل شدن به یک بحران شناسایی کنید.
بهطور کُلی، ابزارهای مانیتورینگ سرور به دو دسته تقسیم میشوند:
۱. ابزارهای خط فرمان (سریع و لحظهای):
- لینوکس: دستوراتی مانند htop و top (برای وضعیت پردازنده و رم)، iostat (برای بررسی درگیری دیسک) و netstat (برای پایش ارتباطات شبکه).
- ویندوز: ابزارهای پیشفرض مانند Task Manager، Resource Monitor و Performance Monitor که اطلاعات دقیقی از وضعیت لحظهای سیستم ارائه میدهند.
۲. نرمافزارهای مانیتورینگ جامع (بلندمدت و هشداردهنده):
ابزارهای خط فرمان برای بررسی در لحظه عالی هستند، اما برای ثبت لاگهای طولانیمدت، ترسیم نمودار مصرف منابع و دریافت هشدار (Alert)، باید از سیستمهای مانیتورینگ پیشرفتهتری مانند Zabbix ،PRTG یا Datadog استفاده کنید.
برای شناخت دقیقتر این سیستمها و انتخاب بهترین گزینه برای زیرساخت خود، حتماً مقاله بهترین نرم افزارهای مانیتورینگ شبکه را در بلاگ ابر فردوسی مطالعه کنید.
راهکارهای رفع کندی سرور

وقتی از مرحله تشخیص عبور کردید و متوجه شدید دقیقاً دلیل کند شدن سرور چیست، نوبت به اقدام عملی میرسد. اگر میپرسید در شرایط بحرانی سرور کند شده چیکار کنیم، بهترین رویکرد، اجرای راهکار رفع کندی سرور در دو فاز کوتاهمدت و بلندمدت است.
راهکارهای کوتاهمدت
برای بازگرداندن سریع سیستم به حالت پایدار و کاهش Load Average سرور، ابتدا این اقدامات اورژانسی را انجام دهید:
- ریاستارت سرویسها: راهاندازی مجدد وبسرورها (مانند Nginx یا Apache) و دیتابیس برای رفع اختلالات موقت
- پاک کردن کش (Cache): تخلیه حافظه موقت سیستم برای آزادسازی منابع مسدود شده
- بستن پردازشهای سنگین: شناسایی و توقف (Kill) پروسههای زائدی که باعث مصرف بالای CPU سرور شدهاند
راهکارهای بلندمدت
گاهی پساز بررسیها متوجه میشوید که مشکل از خطای نرمافزاری نیست؛ بلکه توان سختافزار فعلی دیگر پاسخگوی نیازهای دیتابیس یا ترافیک ورودی سایت شما نیست. اینجا نقطهای است که مصرف RAM سرور و پردازنده به سقف خود میرسد و محدودیت منابع، عملکرد کل سیستم را مختل میکند.
در این شرایط، ریاستارت کردن فقط یک مُسکن موقت است و درگیری مداوم با قطعیها به کسبوکار شما آسیب میزند. با استناد به مفهوم مقیاسپذیری ابری در آمازون (AWS)، منطقیترین و قطعیترین راهکار برای حل این مشکل، ارتقاء و مقیاسپذیری آنی منابع است.
با انتقال زیرساخت و اجاره سرور ابری، میتوانید بدون نیاز به خرید سختافزار جدید فیزیکی، در لحظه منابع پردازشی خود را متناسب با نیازتان افزایش دهید. در مقاله سرور ابری یا Cloud Server چیست؟ بهطور مفصل توضیح دادهایم که این فناوری چگونه همیشه دوام سیستم شما را تضمین میکند.
جدول زیر نشان میدهد که چرا سرورهای ابری فردوسی، راهکاری مطمئن برای رهایی از لگ و کندی هستند:
| امکانات سرور ابری فردوسی | کاربرد در رفع اختلال و کندی سرور |
|---|---|
| سختافزار پرچمدار و قدرتمند | بهرهگیری از پردازندههای Intel Xeon/AMD EPYC و هارد NVMe برای پردازش آنی کوئریهای سنگین |
| مقیاسپذیری فوری منابع | امکان افزایش یا کاهش لحظهای CPU و RAM بدون ایجاد اختلال در عملکرد سایت |
| پرداخت براساس مصرف | مدیریت اقتصادی هزینهها؛ پرداخت ساعتی فقط بهازای منابعی که واقعاً استفاده میکنید |
| فایروال و مانیتورینگ پیشرفته | حفاظت دربرابر حملات سایبری و مسدودسازی ترافیکهای مخربی که سرور را کُند میکنند |
| اینترنت نامحدود و ارزان | ترافیک نیمبها و پورتهای پرسرعت برای جلوگیری از افت کیفیت شبکه و تأخیر |
چک لیست نهایی رفع کندی سرور
برای اینکه در مواقع بحرانی دچار سردرگمی نشوید، میتوانید از این چکلیست سریع و عملیاتی استفاده کنید (پیشنهاد میکنیم این لیست را ذخیره یا چاپ کنید):
قدم اول: تشخیص اولیه شبکه (بیرون سرور)
- گرفتن تست Ping از سرور (بررسی وضعیت اتصال و Packet Loss)
- اجرای Traceroute یا MTR (بررسی محل دقیق افت سرعت در نودهای شبکه)
قدم دوم: بررسی منابع سختافزاری (درون سرور)
- اجرای دستور htop یا top و بررسی Load Average (آیا از تعداد هستههای CPU بالاتر است؟)
- اجرای دستور free -m و بررسی وضعیت RAM و میزان درگیری حافظه Swap
- بررسی وضعیت درگیری دیسک (I/O) با استفاده از دستور iostat یا iotop
- بررسی فضای خالی هارد دیسک (آیا درایوها پر شدهاند؟)
قدم سوم: پایش وضعیت نرمافزارها و سرویسها
- بررسی لاگهای وبسرور (Apache/Nginx) برای یافتن خطاهای ۵۰۰ یا Timeout
- بررسی وضعیت دیتابیس (آیا کوئری سنگین یا بدون ایندکسی درحال اجرا است؟)
قدم چهارم: بررسی امنیتی
- بررسی ترافیک ورودی شبکه (آیا حجم ترافیک بهصورت غیرعادی بالا است و شبیه به حمله DDoS است؟)
- بررسی پروسههای ناشناس با مصرف CPU بالا (احتمال وجود بدافزار یا ماینر)
قدم پنجم: اقدامات اورژانسی و بلندمدت
- پاکسازی حافظه کش (Cache) سیستم و دیتابیس
- توقف (Kill)کردن پروسههای زائد و ریاستارت سرویسهای مختلشده
- تصمیمگیری برای ارتقای منابع سختافزاری و مهاجرت به سرور ابری (درصورت رسیدن به سقف منابع)
جمعبندی
در این مقاله چکلیست کاربردی و جامعی برای عیب یابی سرور کند ارائه دادیم. دیدیم که مانیتورینگ منابع سختافزاری، بررسی وضعیت شبکه و تحلیل لاگها، گامهای اساسی برای یافتن گلوگاه سیستم هستند. فراموش نکنید که پیشگیری همواره بهتر از درمان است؛ پس با استفاده از ابزارهای پایش مستمر و انتخاب یک زیرساخت ابری مقیاسپذیر، میتوانید از بروز اختلالات ناگهانی جلوگیری کنید.
شما برای پیدا کردن علت لگ سرور معمولاً از چه روشها و ابزارهایی استفاده میکنید؟ تجربیات، چالشها یا سؤالات خود را در بخش نظرات با ما به اشتراک بگذارید تا کارشناسان ما در سریعترین زمان پاسخگوی شما باشند.
منابع:
cloudflare | netflixtechblog | redhat | datadoghq | cisco | ubuntu | aws.amazon
سؤالات متداول
چرا سرور ناگهان کند میشود؟
کندی ناگهانی معمولاً بهدلیل ورود حجم پیشبینینشدهای از کاربران (ترافیک لحظهای بالا)، اجرای یک کوئری (Query) سنگین و بهینهنشده در دیتابیس، اجرای فرایندهای پسزمینه مثل بکآپگیری در ساعات اوج مصرف، یا حملات سایبری (مانند DDoS) رخ میدهد که منابع سیستم را در یک لحظه پُر میکنند.
چطور بفهمیم مشکل از سرور است یا اینترنت؟
سادهترین راه استفاده از دستورات شبکه مانند Ping و Traceroute در خط فرمان (CMD یا Terminal) است. اگر پینگ شما به آیپی سرور بسیار بالاست یا قطعی (Time Out) دارد، احتمالاً مشکل از اینترنت شما یا مسیر ارتباطی (Routing) است. اما اگر پینگ نرمال است ولی سایت یا اپلیکیشن به کُندی لود میشود، مشکل قطعاً از داخل سرور یا تنظیمات نرمافزاری آن است.
Bottleneck سرور چیست؟
گلوگاه یا Bottleneck وضعیتی است که در آن عملکرد کل سرور بهدلیل محدودیت تنها یکی از قطعات کاهش مییابد. بهعنوان مثال، اگر پردازنده و رم شما بسیار قدرتمند باشند اما از یک هارد دیسک قدیمی و کند استفاده کنید، هارد دیسک تبدیل به گلوگاه میشود و اجازه نمیدهد سیستم با حداکثر توان خود کار کند.
آیا پُر شدن فضای هارد دیسک باعث کند شدن سرور میشود؟
بله، صددرصد. زمانی که فضای ذخیرهسازی سرور به مرز پر شدن (معمولاً بالای ۹۰٪) میرسد، سیستمعامل و دیتابیس دیگر نمیتوانند فایلهای موقت (Temp) را بنویسند یا اطلاعات جدید را ذخیره کنند. این مسئله بهشدت سرعت پردازشها را کاهش داده و حتی میتواند باعث از دسترس خارج شدن کامل سرور شود.
آیا ریاستارت کردن مداوم سرور برای رفع کندی کار درستی است؟
خیر. ریاستارت کردن (Reboot) تنها منابع قفلشده را بهصورت موقت آزاد میکند و نقش یک مسکّن را دارد. اگر دلیل اصلی مشکل (مثل کمبود منابع سختافزاری، کدهای مخرب یا حملات) برطرف نشود، کندی خیلی زود بازمیگردد. در این شرایط، بهترین راهکار دائمی، ارتقاء منابع ازطریق زیرساختهای مقیاسپذیر مانند سرور ابری است.
تفاوت کندی دیتابیس و کندی وبسرور در چیست؟
کندی دیتابیس (مثل MySQL) معمولاً بهدلیل فقدان ایندکسگذاری (Indexing) مناسب در جداول، کمبود رم برای کش کردن اطلاعات، یا کندی هارد اتفاق میافتد. اما کندی وبسرور (مثل Apache یا Nginx) بیشتر ناشی از تنظیمات نادرست تعداد Workerها یا پر شدن ظرفیت کانکشنهای همزمان است.
بهترین ابزارهای لینوکسی برای پیدا کردن سریع علت کندی کدامند؟
اگر از سیستمعامل لینوکس استفاده میکنید، دستورات top یا htop برای بررسی لحظهای پردازنده و رم، دستور iotop برای بررسی وضعیت درگیری هارد دیسک (I/O)، و دستور netstat برای مشاهده اتصالات شبکه، بهترین و در دسترسترین ابزارهای عیبیابی محسوب میشوند.

