ఆపరేటింగ్ సిస్టమ్స్

Linux సర్వర్‌లో htop కమాండ్‌తో CPU, RAM ఎక్కువ వినియోగించే స్క్రిప్ట్‌లు ఎలా కనుగొనాలి?

  • 13 నిమిషాల పఠనం
  • Hostragons బృందం
Linux సర్వర్‌లో htop కమాండ్‌తో CPU, RAM ఎక్కువ వినియోగించే స్క్రిప్ట్‌లు ఎలా కనుగొనాలి?

Linux సర్వర్‌లో htop కమాండ్ అనేది CPU మరియు RAM ని అధికంగా వినియోగిస్తున్న స్క్రిప్ట్‌లను రియల్ టైంలో గుర్తించడానికి ఉపయోగించే అత్యంత సౌకర్యవంతమైన మానిటరింగ్ టూల్‌లలో ఒకటి. htop స్క్రీన్‌లో CPU%, MEM%, PID, USER, TIME+ మరియు COMMAND కాలమ్స్‌ను పరిశీలించడం ద్వారా ఏ PHP, Python, Node.js, cron, డేటాబేస్ లేదా సిస్టమ్ ప్రాసెస్ సర్వర్‌ను తీవ్రంగా ఉపయోగిస్తున్నదో తెలుసుకొని, ఆ ప్రాసెస్ యజమాని, ఫైల్ పాత్ మరియు పని ఉద్దేశ్యాన్ని పరిశీలించి సురక్షితంగా చర్య తీసుకోవచ్చు.

షేర్‌డ్ హోస్టింగ్, VPS, VDS లేదా డెడికేటెడ్ సర్వర్ ఏదైనా అయినా, అకస్మాత్తుగా సర్వర్ స్లో కావడానికి ప్రధాన కారణం నియంత్రణ లేకుండా నడుస్తున్న స్క్రిప్ట్‌లు. ఉదాహరణకు, తప్పుగా పనిచేసే WordPress ప్లగిన్, అనంత లూప్‌లో పడిపోయిన PHP ఫైల్, భారీగా నడుస్తున్న cron టాస్క్, ఆప్టిమైజ్ కాని డేటాబేస్ క్వెరీ లేదా హ్యాకై చేసిన వెబ్ ఫైల్ CPU వినియోగాన్ని కొన్ని నిమిషాల్లో 100% కు చేరవచ్చు. RAM వినియోగం పెరిగితే, సర్వీసులు ఫ్రీజ్ అవ్వచ్చు, MySQL కనెక్షన్స్ డిస్కనెక్ట్ కావచ్చు, వెబ్‌సైట్లు 503 ఎర్రర్ చూపించవచ్చు లేదా Linux కర్నెల్ OOM Killer ద్వారా కొన్ని ప్రాసెస్‌లను ముగించవచ్చు.

ఈ గైడ్‌లో htop ఇన్‌స్టాలేషన్ నుండి ప్రారంభించి, స్క్రీన్ ఎలా చదవాలో, CPU మరియు RAM అధికంగా వినియోగిస్తున్న స్క్రిప్ట్‌లను ఎలా గుర్తించాలో, PID ద్వారా ఫైల్ పాత్ ఎలా తెలుసుకోవాలో, ప్రాసెస్‌పై సురక్షితంగా ఎలా చర్య తీసుకోవాలో దశలవారీగా వివరించబోతున్నాం. అదనంగా, సెక్యూరిటీ సందేహాలు, cron చెక్, లాగ్ విశ్లేషణ మరియు సమస్యలు మళ్లీ తలెత్తకుండా పాటించాల్సిన ఆప్టిమైజేషన్ సూచనలు కూడా ఇస్తాం. మీ సర్వర్‌లో తరచుగా రిసోర్స్ లిమిట్ సమస్యలు ఉంటే, ఇన్‌ఫ్రాస్ట్రక్చర్ ఎంపిక కోసం VPS సర్వర్ ప్యాకేజీలు మరియు అధిక ప్రదర్శన వెబ్ హోస్టింగ్ పేజీలను చూడవచ్చు.

htop అంటే ఏమిటి? ఇది top కమాండ్‌తో పోల్చితే ఎందుకు బెటర్?

htop అనేది Linux సిస్టమ్‌లలో నడుస్తున్న ప్రాసెస్‌లను ఇంటరాక్టివ్‌గా మానిటర్ చేయడానికి ఉపయోగించే టెర్మినల్ ఆధారిత టూల్. ఇది క్లాసిక్ top కమాండ్ వంటి అయితే, మరింత పఠనీయమైన ఇంటర్‌ఫేస్, రంగుల ద్వారా రిసోర్స్‌ వినియోగం చూపించడం, సులభమైన సార్టింగ్, సెర్చ్, ఫిల్టరింగ్ మరియు ప్రాసెస్ మేనేజ్‌మెంట్ ఫీచర్లను అందిస్తుంది. అందుకే, ప్రత్యక్ష సర్వర్‌లో వేగంగా సమస్యలను గుర్తించేటప్పుడు htop అనేది చాలా సిస్టమ్ అడ్మిన్స్ మొదట చూసే టూల్.

htop తో మీరు తక్షణమే ఈ వివరాలను చూడవచ్చు:

  • ప్రతి ప్రాసెస్ ఎంత CPU శాతం ఉపయోగిస్తున్నదో
  • ప్రతి ప్రాసెస్ ఎంత RAM శాతం మరియు మెమరీ పరిమాణం ఉపయోగిస్తున్నదో
  • ప్రాసెస్ PID నంబర్
  • ప్రాసెస్ నడిపిస్తున్న యూజర్
  • కమాండ్ లైన్ లేదా స్క్రిప్ట్ పేరు
  • పనిచేసిన సమయం మరియు ప్రాధాన్యత విలువ
  • లోడ్ ఏవరేజ్, మొత్తం RAM, స్వాప్ మరియు CPU కోర్ వినియోగం

ప్రత్యేకంగా ఒక హోస్టింగ్ వాతావరణంలో ఒకే సర్వర్‌లో అనేక వెబ్‌సైట్లు, యూజర్లు లేదా సర్వీసులు నడుస్తుంటే, కేవలం మొత్తం రిసోర్స్ వినియోగం చూడడం సరిపోదు. సమస్య ఏ యూజర్, ఏ వెబ్‌సైట్, ఏ cron టాస్క్ లేదా ఏ స్క్రిప్ట్ ఫైల్‌కు సంబంధించినదో తెలుసుకోవాలి. Linux సర్వర్‌లో htop ఈ విషయంలో వేగవంతమైన మొదటి దశగా ఉపయోగపడుతుంది.

htop ఇన్‌స్టాలేషన్: డిస్ట్రిబ్యూషన్ ఆధారంగా కమాండ్లు

అధునాతన Linux డిస్ట్రోల్లో htop డిఫాల్ట్‌గా ఉండకపోవచ్చు. మీరు root లేదా sudo ప్రివిలేజెస్ ఉంటే, కొన్ని సెకన్లలో సులభంగా ఇన్‌స్టాల్ చేసుకోవచ్చు. ఇన్‌స్టాలేషన్ ముందు ప్యాకేజ్ లిస్టును అప్‌డేట్ చేయడం, ముఖ్యంగా కొత్త సర్వర్‌లలో ఎర్రర్లను తగ్గిస్తుంది.

Ubuntu మరియు Debian సర్వర్‌లలో htop ఇన్‌స్టాలేషన్

Ubuntu లేదా Debian ఆధారిత సర్వర్‌లలో ఈ కమాండ్లు ఉపయోగించవచ్చు:

sudo apt update

sudo apt install htop -y

ఇన్‌స్టాలేషన్ తర్వాత htop టైప్ చేసి టూల్‌ను స్టార్ట్ చేయండి. sudo ప్రివిలేజీ లేకుంటే, హోస్టింగ్ ప్రొవైడర్ నుండి సహాయం తీసుకోవాలి. మేనేజ్ చేయగలిగే VPS ఉంటే సాధారణంగా root యాక్సెస్ మీకు ఉంటుంది.

AlmaLinux, Rocky Linux, CentOS మరియు RHEL ఇన్‌స్టాలేషన్

RHEL ఆధారిత సిస్టమ్‌లలో ప్యాకేజ్ మేనేజర్ dnf లేదా yum ఆధారంగా ఉంటాయి:

sudo dnf install htop -y

పాత CentOS వెర్షన్‌లకు EPEL రిపోజిటరీ అవసరం:

sudo yum install epel-release -y

sudo yum install htop -y

ఇన్‌స్టాలేషన్ విజయవంతమైతే, టెర్మినల్‌లో htop టైప్ చేసినప్పుడు రంగులతో కూడిన మానిటర్ స్క్రీన్ తెరుచుకుంటుంది. సర్వర్ నిర్వహణలో కొత్తవారైతే లినక్స్ ఆదేశాల మార్గదర్శిని చూడటం ప్రారంభానికి సహాయకరం.

htop స్క్రీన్ చదవడం: కాలమ్స్ అర్థం ఏమిటి?

htop ప్రారంభించినప్పుడు స్క్రీన్ టాప్‌లో CPU కోర్‌లు, RAM, స్వాప్, టాస్క్ సంఖ్య, థ్రెడ్‌ల సంఖ్య, లోడ్ ఏవరేజ్ మరియు అప్టైమ్ వివరాలు కనిపిస్తాయి. కింద భాగంలో నడుస్తున్న ప్రాసెస్‌ల జాబితా ఉంటుంది. సమస్యల్ని అర్థం చేసుకోవడానికి ముఖ్యమైన కాలమ్స్ ఇవి:

htop స్క్రీన్ చదవడం: కాలమ్స్ అర్థం ఏమిటి?
కాలమ్ అర్థం ఎప్పుడు సందేహించాలి?
PID ప్రాసెస్ ప్రత్యేక గుర్తింపు సంఖ్య ఫైల్ పాత్ మరియు కనెక్షన్‌లను పరిశీలించడానికి అవసరం
USER ప్రాసెస్ నడిపిస్తున్న లినక్స్ యూజర్ అనుమానాస్పద యూజర్ ఉన్నప్పుడు చెక్ చేయాలి
CPU% ప్రాసెస్ తక్షణ CPU వినియోగం శాతం ధృడంగా 80-100% మధ్య కొనసాగితే పరిశీలించాలి
MEM% ప్రాసెస్ ఉపయోగిస్తున్న RAM శాతం ఒకే స్క్రిప్ట్ 20% లేదా అంతకంటే ఎక్కువ RAM తీసుకుంటే ప్రమాదం
TIME+ ప్రాసెస్ మొత్తం CPU సమయం చిన్న సమయం కాదు, దీర్ఘకాలం అధిక వినియోగం ఉన్న పనులను చూపిస్తుంది
COMMAND నడుస్తున్న కమాండ్, సర్వీస్ లేదా స్క్రిప్ట్ php, python, node, perl, bash, java వంటి ప్రాసెస్‌లలో ఫైల్ పాత్ పరిశీలించాలి

ఇక్కడ గమనించవలసిన విషయం ఏమిటంటే, తక్షణ CPU usage spike ప్రతి సారి సమస్య అని కాదు. ఉదాహరణకు బ్యాకప్, ఇమేజ్ ఆప్టిమైజేషన్, cache క్లియర్ లేదా టрафిక్ అధికత సమయంలో CPU usage తాత్కాలికంగా పెరుగుతుంది. సమస్య అంటే ఒకే ప్రాసెస్ నిమిషాల పాటు అధిక CPU లేదా RAM తీసుకోవడం, లోడ్ ఏవరేజ్ CPU కోర్ల కంటే చాలా ఎక్కువగా ఉండటం, మరియు వెబ్ సర్వీస్‌లు స్పందించకపోవడం.

CPU అధికంగా వినియోగిస్తున్న స్క్రిప్ట్‌లు htop తో కనుగొనడం

CPU ఎక్కువగా ఉపయోగిస్తున్న స్క్రిప్ట్‌లను కనుగొనడానికి, htop స్క్రీన్‌లో F6 నొక్కి సార్టింగ్ కాలమ్ ఎంచుకోండి లేదా CPU% కాలమ్ ఆధారంగా సార్ట్ చేయండి. కొంత టెర్మినల్‌లు మౌస్ సపోర్ట్ ఉంటే CPU% టైటిల్‌పై క్లిక్ చేయడం సరిపోతుంది. టాప్‌లో కనిపించే ప్రాసెస్‌లు CPU ఎక్కువగా ఉపయోగిస్తున్నవి.

దశ 1: CPU% ఆధారంగా సార్ట్ చేయండి

htop లో ప్రాసెస్‌లను CPU వినియోగం ఆధారంగా సార్ట్ చేయండి. ఉదాహరణకు php-fpm, php, python3, node, java, mysqld లేదా bash వంటి ప్రాసెస్‌లు ఎప్పుడూ టాప్‌లో ఉంటే వాటిని గుర్తించండి. సింగిల్ కోర్ సిస్టమ్‌లలో 100% CPU వినియోగం సాధారణం, కానీ మల్టీ కోర్ సిస్టమ్‌లలో 200%, 400% వంటి విలువలు కూడా కనిపించవచ్చు, అంటే ప్రాసెస్ ఒక కంటే ఎక్కువ కోర్లను ఉపయోగిస్తోంది.

దశ 2: PID మరియు USER వివరాలు నోటు చేసుకోండి

అనుమానాస్పద ప్రాసెస్ PID మరియు USER వివరాలను రాయండి. ఉదాహరణకు PID 24819, USER siteuser మరియు COMMAND php /home/siteuser/public_html/wp-cron.php అయితే వెబ్‌సైట్ cron లేదా WordPress మెకానిజంతో సంబంధం ఉండే అవకాశం ఉంది. COMMAND చాలా చిన్నగా ఉంటే htop సెట్టింగ్స్ లో పూర్తి కమాండ్ చూపించేటట్లు మార్చండి లేదా ps కమాండ్‌తో డీటెయిల్స్ పొందండి.

దశ 3: ప్రాసెస్ అసలు కమాండ్ చూడండి

PID ఆధారంగా పూర్తి కమాండ్ తెలుసుకోవడానికి ఈ కమాండ్ ఉపయోగించండి:

ps -fp PID

ఉదాహరణ:

ps -fp 24819

ఇది సాధారణంగా స్క్రిప్ట్ ఏ ఫైల్ నుండి నడుస్తుందో చూపిస్తుంది. ఉదాహరణకు php /home/user/public_html/index.php అయితే అది వెబ్ రిక్వెస్ట్ కావచ్చు. php /home/user/public_html/wp-content/plugins/unknown-plugin/task.php అయితే ప్లగిన్ సంబంధిత సమస్య ఉండవచ్చు.

దశ 4: ఫైల్ పాత్ మరియు ఓపెన్ ఫైళ్లను చెక్ చేయండి

ఒక ప్రాసెస్ ఏ ఫైళ్లను ఉపయోగిస్తున్నదో తెలుసుకోవడానికి lsof టూల్ ఉపయోగపడుతుంది:

lsof -p PID

ఈ కమాండ్ ప్రాసెస్ ఓపెన్ చేసిన ఫైళ్లు, లైబ్రరీలు, లాగ్‌లు మరియు నెట్‌వర్క్ కనెక్షన్లను చూపిస్తుంది. హోస్టింగ్ వాతావరణంలో దీనితో ఏ వెబ్‌సైట్ డైరెక్టరీ యాక్టివ్ ఉంది అనేది అర్థం చేసుకోవచ్చు. ఉదాహరణకు /home/example/public_html/wp-content/uploads లో అనుమానాస్పద PHP ఫైల్ కనపడితే అది సెక్యూరిటీ ఇష్యూ సూచిస్తుంది. ఇలాంటి సందర్భంలో కేవలం ప్రాసెస్‌ను కిల్ చేయడం సరిపోదు; ఫైల్ క్లీనప్, పాస్వర్డ్ల మార్చడం, ప్లగిన్ అప్‌డేట్ మరియు సెక్యూరిటీ స్కాన్ చేయాలి. SSL మరియు సురక్షిత కనెక్షన్ సెట్టింగ్స్ కోసం SSL సర్టిఫికెట్ పరిష్కారాలు కూడా చూడండి.

RAM అధికంగా వినియోగిస్తున్న స్క్రిప్ట్‌లు htop తో కనుగొనడం

RAM సమస్యలు CPU సమస్యల కంటే మరింత మసకబారినవిగా ఉండవచ్చు. CPU usage పెరిగితే తక్షణ స్లో డౌన్ అనిపిస్తే, RAM పూర్తయితే సర్వీసులు అప్రతీకారంగా క్రాష్ అవుతాయి, స్వాప్ ఎక్కువగా ఉపయోగించబడుతుంది, మరియు సర్వర్ మొత్తం స్లో అవుతుంది. htop లో MEM% కాలమ్ ఆధారంగా సార్టింగ్ చేసి ఎక్కువ RAM వినియోగిస్తున్న ప్రాసెస్‌లను చూడవచ్చు.

MEM%, RES మరియు స్వాప్ సంబంధం అర్థం చేసుకోవడం

htop డిఫాల్ట్ వ్యూ MEM% చూపిస్తుంది. కొన్ని సెట్టింగ్స్‌లో VIRT, RES, SHR కాలమ్స్ కనిపిస్తాయి. RAM విశ్లేషణలో RES విలువ ముఖ్యమే, ఎందుకంటే ఇది ప్రాసెస్ నిజంగా ఫిజికల్ మెమరీలో ఎంత వాడుతున్నదో చూపిస్తుంది. VIRT విలువ ఎప్పుడూ నిజమైన RAM వినియోగం కాదు, కాబట్టి అది కొంచెం మాయ చేస్తుంది.

ఉదాహరణకు 4 GB RAM ఉన్న VPSలో ఒక PHP ప్రాసెస్ 900 MB RES ఉపయోగించడం సాధారణం కాదు. Node.js అప్లికేషన్ 200 MB నుండి 1.5 GB కి పెరగడం మెమరీ లీక్ సూచన కావచ్చు. MySQL లేదా MariaDB అధిక RAM ఉపయోగించటం కొన్నిసార్లు సాధారణ కాష్ ప్రవర్తన కావచ్చు; ఇక్కడ క్వెరీ పనితీరు, బఫర్ సెట్టింగ్స్, మొత్తం సిస్టమ్ మెమరీ కలిసి చూచాలి.

RAM ఎక్కువ తీసుకునే స్క్రిప్ట్‌ల సాధారణ కారణాలు

  • PHP, Python లేదా Node.js కోడ్‌లలో అనంత లూప్స్
  • పెద్ద CSV, XML లేదా JSON ఫైళ్లను ఒక్కసారిగా మెమరీలో లోడ్ చేయడం
  • ఆప్టిమైజ్ కాని WordPress ప్లగిన్లు మరియు థీమ్ ఫంక్షన్స్
  • ఇమేజ్ ప్రాసెసింగ్, PDF జనరేషన్ లేదా వీడియో కన్‌వర్షన్ కార్యకలాపాలు
  • తగిన కాష్ లేకపోవడంతో పునరావృతంగా భారీ క్వెరీలు
  • బాట్ ట్రాఫిక్ లేదా దాడుల వల్ల ఒకే స్క్రిప్ట్ బహుళ సార్లు నడవడం
  • మెమరీ లీక్ ఉన్న దీర్ఘకాలిక బ్యాక్‌గ్రౌండ్ సర్వీసులు

ఇలాంటి సమస్యలలో కేవలం kill కమాండ్‌తో ప్రాసెస్‌ను ఆపడం తాత్కాలిక ఉపశమనం. శాశ్వత పరిష్కారం కోసం స్క్రిప్ట్ ఏం చేస్తున్నది, ఏ ఇన్‌పుట్‌లతో ట్రిగ్గర్ అవుతుంది, ఎందుకు మెమరీ విడుదల చేయడంలేదు అన్నదానిపై విశ్లేషణ చేయాలి.

htop లో సెర్చ్, ఫిల్టర్ మరియు ట్రీ వ్యూ ఉపయోగించడం

సర్వర్‌లో వెయ్యి ప్రాసెస్‌లు నడుస్తున్నప్పుడు జాబితాలో మాన్యువల్‌గా వెతకడం కష్టం. htop ఈ విషయంలో ఉపయోగకరమైన షార్ట్‌కట్స్ ఇస్తుంది. F3 తో సెర్చ్ చేయవచ్చు, F4 తో ఫిల్టర్, F5 తో ట్రీ వ్యూ చూడవచ్చు. ట్రీ వ్యూ ముఖ్యంగా ప్యారెంట్-చైల్డ్ సంబంధాలు చూడటానికి ఉపయోగపడుతుంది. ఉదాహరణకు nginx లేదా Apache క్రింద నడిచే php-fpm చైల్డ్ ప్రాసెస్‌లు, cron క్రింద నడిచే స్క్రిప్ట్‌లు, లేదా supervisor ద్వారా మేనేజ్ అయ్యే Node.js సర్వీసులు క్లియర్‌గా కనపడతాయి.

ప్రాక్టికల్ ఫిల్టర్ ఉదాహరణలు

  • php టైప్ చేసి కేవలం PHP ప్రాసెస్‌లను చూడండి.
  • python టైప్ చేసి Python స్క్రిప్ట్‌లను ఫిల్టర్ చేయండి.
  • wp-cron టైప్ చేసి WordPress cron కార్యకలాపాలు చెక్ చేయండి.
  • node టైప్ చేసి Node.js అప్లికేషన్లను పరిశీలించండి.
  • యూజర్ పేరు ఫిల్టర్ చేసి ఒకే హోస్టింగ్ ఖాతా ప్రాసెస్‌లు మాత్రమే చూడండి.

ఈ ఫిల్టర్లు బహుళ యూజర్ సర్వర్‌లలో సమయం ఆదా చేస్తాయి. ఉదాహరణకు ఒకే సర్వర్‌లో 30 వెబ్‌సైట్లు ఉంటే USER కాలమ్ మరియు కమాండ్ పాత్ కలిపి సమస్య ఏ ఖాతాకు సంబంధించినదో వేగంగా అర్థం చేసుకోవచ్చు. డొమైన్ ఆధారిత ప్రాజెక్ట్‌ల కోసం యాజమాన్యాన్ని సులభతరం చేయాలనుకుంటే డొమెయిన్ విచారణ మరియు నమోదు పేజీ చూడవచ్చు.

అనుమానాస్పద PID కోసం సురక్షిత చర్యలు

అధిక రిసోర్స్ తీసుకునే ప్రాసెస్ కనుగొన్న వెంటనే kill -9 ఉపయోగించడం ఆకర్షణీయంగా అనిపించవచ్చు. కానీ ఇది డేటా నష్టానికి, అర్ధంగా నిలిచిపోయిన రాయడం కార్యకలాపాలకు లేదా సర్వీస్ అసంగతులకు దారితీస్తుంది. అందుకే ఒక సురక్షిత ప్రణాళిక అనుసరించాలి.

1. ప్రాసెస్ డాక్యుమెంటేషన్

మొదట PID, USER, COMMAND, CPU%, MEM% మరియు సమయాన్ని రాయండి. సాధ్యమైతే htop స్క్రీన్‌షాట్ తీసుకోండి. ఈ రికార్డులు సమస్య పునరావృతమైతే పోల్చుకునేందుకు ఉపయోగపడతాయి. ముఖ్యంగా ఏజెన్సీ, ఈ-కామర్స్ లేదా ఎంటర్‌ప్రైజ్ ప్రాజెక్ట్స్‌లో కస్టమర్‌కి సాంకేతిక వివరాలు ఇవ్వడానికి వీలు కల్పిస్తాయి.

2. ప్రాసెస్ ఫైల్ పాత్ నిర్ధారించండి

ps -fp PID మరియు lsof -p PID ద్వారా ఫైల్ పాత్‌ను ధృవీకరించండి. ఫైల్ వెబ్ రూట్ డైరెక్టరీలో ఉంటే అప్లికేషన్ లాగ్‌లను పరిశీలించండి. WordPressకు wp-content/debug.log, వెబ్ సర్వర్‌కు access మరియు error log‌లు, PHP-FPM కు slow log ముఖ్యమైన సూచనలు ఇస్తాయి.

3. ముందు మృదువుగా ప్రాసెస్ ముగింపు ప్రయత్నం

ప్రాసెస్ నియంత్రణలో ఉండని పరిస్థితుల్లో ముందుగా సాధారణ kill సిగ్నల్ పంపండి:

kill PID

కొన్ని సెకన్లు వేచి htopలో ప్రాసెస్ మూసివేయబడిందో చూడండి. మూసివేయకపోతే, మరియు సిస్టమ్ ఆరోగ్యాన్ని తీవ్రంగా ప్రభావితం చేస్తే క్రింది కమాండ్ ఉపయోగించవచ్చు:

kill -9 PID

kill -9 ప్రాసెస్‌కు క్లీనప్ అవకాశమివ్వకుండా తక్షణమే ముగిస్తుంది. అందువల్ల డేటాబేస్ ట్రాన్సాక్షన్స్, ఫైల్ రైటింగ్ లేదా బ్యాకప్ టాస్క్‌ల కోసం జాగ్రత్తగా వాడాలి.

4. ప్రాసెస్ తిరిగి మొదలైతే కారణం వెతకండి

మీరు ప్రాసెస్‌ను ఆపినా అది సెకన్లలో తిరిగి ప్రారంభమైతే క్రోన్, systemd సర్వీస్, supervisor, వెబ్ రిక్వెస్ట్ లేదా బాట్ ట్రాఫిక్ కారణం కావచ్చు. క్రోన్ రికార్డులు కోసం crontab -l, సిస్టమ్ సర్వీసుల కోసం systemctl status సర్వీస్‌నేమ్, వెబ్ ట్రాఫిక్ కోసం access log పరిశీలించాలి. WordPress wp-cron కారణమైతే అసలు క్రోన్ సెట్టింగులు మరియు cache పాలసీ చెక్ చేయాలి.

htop డేటాను లాగ్‌లతో కలిపి విశ్లేషించడం

htop డేటాను లాగ్‌లతో కలిపి విశ్లేషించడం

htop మీకు ఏ ప్రాసెస్ ఎక్కువ రిసోర్స్ తీసుకుంటుందో చూపిస్తుంది; లాగ్‌లు ఆ కారణాన్ని అర్థం చేసుకోవడానికి సహాయపడతాయి. ఈ రెండు డేటా లేకపోతే సరిగా డయాగ్నోస్ చేయలేరు. ఉదాహరణకు htop లో php-fpm ప్రాసెస్ 180% CPU వినియోగిస్తున్నప్పుడు ఏ URL లేదా ఏ బాట్ ఆ ప్రాసెస్‌ను ట్రిగ్గర్ చేస్తున్నదో access log లేకుండా తెలుసుకోవడం కష్టం.

చూడాల్సిన లాగ్‌లు:

  • వెబ్ సర్వర్ access log: ఎక్కువ రిక్వెస్ట్‌ల URLలు
  • వెబ్ సర్వర్ error log: PHP ఎర్రర్స్, ఫైల్ అనుమతులు, 500 ఎర్రర్స్
  • PHP-FPM slow log: నెమ్మదిగా నడుస్తున్న PHP ఫైళ్ళు
  • MySQL slow query log: భారమైన SQL క్వెరీలు
  • Auth లేదా secure log: అనుమానాస్పద లాగిన్ ప్రయత్నాలు
  • Cron log: షెడ్యూల్ చేసిన టాస్క్‌లు ఎప్పుడు నడుస్తున్నాయి

ఉదాహరణకు htop లో CPU ఎక్కువగా వినియోగిస్తున్న PIDకి సమాన సమయంలో access log లో /wp-admin/admin-ajax.php కి వేల రిక్వెస్ట్‌లు ఉంటే, అది ప్లగిన్, బాట్ ట్రాఫిక్ లేదా తప్పుగా రూపొందించిన AJAX కాల్ కావచ్చు. ఇలాంటి సందర్భంలో WAF, rate limit, cache మరియు ప్లగిన్ ఆప్టిమైజేషన్ కలిపి చేయాలి. వెబ్‌సైట్ పనితీరు మెరుగుపరచుకోవడానికి వెబ్ సైట్ వేగం ఆప్టిమైజేషన్ చూడండి.

సాధారణ లోడ్ మరియు సమస్య లోడ్ మధ్య తేడా ఎలా చెక్ చేయాలి?

ప్రతి అధిక రిసోర్స్ వినియోగం సంక్షోభం కాదు. సర్వర్ హార్డ్వేర్, ట్రాఫిక్ స్థాయి, అప్లికేషన్ రకం మరియు నిర్వహణ పరిస్థితులు పరిగణించాలి. 2 కోర్ల VPSలో లోడ్ ఏవరేజ్ 6-8 నిమిషాల పాటు ఉండటం డేంజరస్. 16 కోర్ల డెడికేటెడ్ సర్వర్‌లో అదే స్థాయి సాధారణం కావచ్చు. అందుకని లోడ్ ఏవరేజ్‌ను CPU కోర్ల సంఖ్యతో పోల్చి అర్థం చేసుకోవాలి.

సాధారణ లోడ్ మరియు సమస్య లోడ్ మధ్య తేడా ఎలా చెక్ చేయాలి?
పరిస్థితి సంభావ్య కారణం సిఫార్సు చర్య
CPU తాత్కాలికంగా 100%, తర్వాత సాధారణానికి తిరిగి వస్తుంది తాత్కాలిక భారీ పని లాగ్‌లు పరిశీలించి, వెంటనే చర్య తీసుకోకూడదు
ఒకే PID నిమిషాల పాటు అధిక CPU వినియోగం అనంత లూప్ లేదా భారీ పని PID ఆధారంగా ఫైల్ పాత్ తెలుసుకొని స్క్రిప్ట్ పరిశీలించండి
RAM స్థిరంగా పెరుగుతూ ఉంటుంది మెమరీ లీక్ సర్వీస్ కోడ్ మరియు వర్కర్ సెట్టింగ్స్ చెక్ చేయండి
స్వాప్ వినియోగం వేగంగా పెరుగుతుంది ఫిజికల్ RAM తక్కువగా ఉంది RAM ఆప్టిమైజేషన్ లేదా హార్డ్వేర్ అప్‌గ్రేడ్ ప్లాన్ చేయండి
ఒకే PHP ప్రాసెస్‌లు బహుళంగా నడుస్తున్నాయి బాట్ ట్రాఫిక్ లేదా భారీ రిక్వెస్ట్‌లు Access log, ఫైర్వాల్, cache పరిశీలించండి

ఈ పోలికతో, అసంబద్ధమైన ఆందోళన మరియు నిజమైన ప్రదర్శన సంక్షోభాలను విడదీయవచ్చు. ప్రత్యేకంగా ఈ-కామర్స్ సైట్లలో క్యాంపెయిన్ సమయాల్లో, చెల్లింపు ఇంటిగ్రేషన్లలో, స్టాక్ అప్‌డేట్‌లలో తాత్కాలిక రిసోర్స్ పెరుగుదల సాధారణం. కానీ యూజర్ అనుభవం దెబ్బతింటే అప్లికేషన్ ఆప్టిమైజేషన్ మరియు సర్వర్ సామర్థ్యం రెండింటినీ పరిశీలించాలి.

సెక్యూరిటీ సందేహం: అధిక రిసోర్స్ ఉపయోగించే స్క్రిప్ట్ హాని కలిగించవచ్చా?

CPU లేదా RAM ఎక్కువగా వినియోగించే స్క్రిప్ట్ తప్పకుండా సాధారణ తప్పిదమే కాదు. హ్యాకై చేసిన వెబ్‌సైట్లలో దాడిదారులు స్పామ్ పంపడం, క్రిప్టో మైనింగ్, ప్రాక్సీ ట్రాఫిక్, DDoS బాట్స్ లేదా బ్యాక్‌డోర్ స్క్రిప్ట్‌లు నడుపుతుంటారు. htop స్క్రీన్‌లో అనూహ్య యూజర్‌కి చెందిన అనారోగ్యమైన కమాండ్లు, యాదృచ్ఛిక పేర్లతో ఫైళ్లు, /tmp డైరెక్టరీ నుంచి నడిచే బైనరీలు లేదా public_html/uploads లో నడిచే PHP ఫైళ్లు సెక్యూరిటీ కోసం గంభీరం.

అనుమానాస్పద లక్షణాలు

  • COMMAND కాలమ్‌లో అర్థం కాని లేదా యాదృచ్ఛిక అక్షరాల పేర్లు
  • /tmp, /dev/shm లేదా uploads ఫోల్డర్ నుంచి నడిచే ఫైళ్లు
  • సాధారణంగా ఉండని perl, python లేదా bash ప్రాసెస్‌లు
  • అధికమైన బయటి నెట్‌వర్క్ కనెక్షన్లు
  • ఒకే యూజర్ చాలా ప్రాసెస్‌లు తక్కువ సమయంతో ప్రారంభించడం
  • వెబ్ ఫైళ్లలో ఇటీవల అనధికార మార్పులు

ఇలాంటి పరిస్థితుల్లో ప్రాసెస్‌ను ఆపకముందే కమాండ్ అవుట్పుట్‌లు సాక్ష్యంగా తీసుకోండి. ఆపై ఫైల్ అనుమతులు, హానికరమైన ఫైళ్లు ఐసోలేట్, ప్యానెల్ మరియు CMS పాస్వర్డ్లు మార్చడం, ప్లగిన్లు-థీమ్‌లను అప్‌డేట్ చేసి సెక్యూరిటీ స్కాన్ చేయండి. అదనంగా అడ్మిన్ ప్యానెల్‌లలో 2-ఫ్యాక్టర్ ఆథెంటికేషన్ వాడటం మరియు అవసరంలేని రైట్‌లు తీసివేయడం దీర్ఘకాలికంగా ప్రమాదాన్ని తగ్గిస్తుంది.

పెర్ఫార్మెన్స్ సమస్యలు మళ్లీ కాకుండా తీసుకోవాల్సిన జాగ్రత్తలు

htop తో సమస్య గుర్తించడం ముఖ్యం, కానీ అదే సమస్య మళ్లీ రాకుండా చూసుకోవడం మరింత విలువైనది. క్రింది సూచనలు Linux సర్వర్‌లో CPU మరియు RAM ఆధారిత డౌన్‌టైమ్‌ను గణనీయంగా తగ్గిస్తాయి.

  • PHP memory_limit, max_execution_time, pm.max_children విలువలను సర్వర్ సామర్థ్యానికి సరిపడుగా సెట్ చేయండి.
  • WordPress, Joomla లేదా కస్టమ్ సాఫ్ట్‌వేర్‌లో cache మెకానిజం వాడండి.
  • అవసరం లేని ప్లగిన్లు, థీమ్‌లు, మాడ్యూల్స్ తొలగించండి.
  • MySQL slow query logs ద్వారా భారమైన క్వెరీలను ఆప్టిమైజ్ చేయండి.
  • Cron టాస్క్‌లను ఒకే నిమిషంలో నడపకుండా విభజించి షెడ్యూల్ చేయండి.
  • బాట్ ట్రాఫిక్ కోసం rate limiting, robots.txt మరియు ఫైర్వాల్ నియమాలు అమలు చేయండి.
  • అప్లికేషన్ లాగ్‌లను సకాలంలో రోటేట్ చేసి, పెద్ద లాగ్‌ల వల్ల సిస్టమ్ పై ప్రభావం తగ్గించండి.
  • సర్వర్ మెట్రిక్స్‌ను కేవలం ఇమ్మిడియట్ క్రైసిస్ సమయంలో కాకుండా రెగ్యులర్‌గా ట్రాక్ చేయండి.

ఆప్టిమైజేషన్లు చేసినా రిసోర్స్ వినియోగం ఎప్పుడూ ఎక్కువగా ఉంటే, సమస్య కేవలం సాఫ్ట్‌వేర్ సంబంధితమే కాకపోవచ్చు. ట్రాఫిక్ పెరిగి, అప్లికేషన్ పెద్దదై, హోస్టింగ్ ప్యాకేజ్ తగినంత కాకపోవచ్చు. అప్పుడు స్కేలబుల్ VPS, అధిక RAM, వేగవంతమైన NVMe డిస్క్ లేదా రిసోర్స్ ఐసోలేషన్ ఉన్న సర్వర్ అవసరం అవుతుంది. అవసరాల విశ్లేషణ కోసం హోస్టింగ్ ప్యాకేజీలు మరియు కార్యాలయ సర్వర్ పరిష్కారాలు చూడండి.

ఉదాహరణ సన్నివేశం: WordPress సైట్‌లో CPU Usage పెరగడం

ఒక రియలిస్టిక్ సన్నివేశం చూద్దాం. 4 కోర్లు, 8 GB RAM ఉన్న VPSలో కొన్ని WordPress సైట్లు నడుస్తున్నాయి. యూజర్లు సైట్ స్లోగా ఉందని, అప్పుడప్పుడు 502 ఎర్రర్స్ వస్తున్నాయని ఫిర్యాదు చేస్తున్నారు. టెర్మినల్‌లో htop తెరిచి చూస్తే లోడ్ ఏవరేజ్ 12, CPU కోర్లు పూర్తి ఉపయోగంలో, ఒకే యూజర్‌కు చెందిన అనేక php-fpm ప్రాసెస్‌లు టాప్‌లో కనిపిస్తున్నాయి.

F4 తో యూజర్ ఫిల్టర్ చేసి CPU ఎక్కువగా తీసుకునే PID నోటు చేసుకుంటారు. ps -fp PID లో php-fpm వర్కర్ కనిపిస్తుంది; lsof -p PID ద్వారా /home/site/public_html/wp-content/plugins/example-importer/import.php ఫైల్ యాక్సెస్ అయినట్లు తెలుస్తుంది. Access log పరిశీలిస్తే, అదే నిమిషాల్లో ఆ ఫైల్‌ను ట్రిగ్గర్ చేసే అడ్మిన్ రిక్వెస్ట్‌లు మరియు రిపీట్ అయ్యే AJAX కాల్స్ కనిపిస్తాయి.

సమాధానంగా, ఇంపోర్ట్ ప్రాసెస్ ఆపబడుతుంది, ప్లగిన్ షెడ్యూల్ టాస్క్ డిసేబుల్ చేయబడుతుంది, పెద్ద డేటా భాగాలుగా విభజించి ఇంపోర్ట్ చేయబడుతుంది, PHP max_execution_time పరిమితి సరి చేయబడుతుంది. అలాగే wp-cron కాకుండా సిస్టమ్ క్రోన్ ఉపయోగించడం మొదలుపెడతారు. ఫలితంగా లోడ్ ఏవరేజ్ 12 నుండి 1.8 కి పడిపోతుంది, CPU వినియోగం సాధారణంగా మారుతుంది, వెబ్ సైట్ స్పందన వేగం మెరుగవుతుంది. ఈ ఉదాహరణ htop మాత్రమే కాకుండా ps, lsof, లాగ్ విశ్లేషణతో కలిసి ఉపయోగిస్తే ఎంత సమర్థవంతమో చూపిస్తుంది.

htop ఉపయోగించే సమయంలో సాధారణ తప్పులు

  • కేవలం టాప్ ప్రాసెస్‌ను కిల్ చేసి మూల కారణాన్ని పరిశీలించకపోవడం.
  • VIRT విలువను నిజమైన RAM వినియోగం అనుకోవడం.
  • MySQL కాష్ కోసం RAM వినియోగాన్ని సమస్యగా భావించడం.
  • kill -9ని మొదటి ఆప్షన్‌గా వాడటం.
  • లాగ్‌లను చూడకుండా యూజర్ లేదా అప్లికేషన్‌ను నిందించడం.
  • లోడ్ ఏవరేజ్‌ను CPU కోర్ల సంఖ్యతో పోల్చకుండా అర్థం చేసుకోవడం.
  • సెక్యూరిటీ ఇన్సిడెంట్‌లో ఫైల్ అంతగ్రతను పరిశీలించకపోవడం.

ఈ తప్పుల నుండి తప్పుకోవడం ద్వారా డౌన్‌టైమ్ తగ్గుతుంది, తప్పు చర్యల వల్ల డేటా నష్టం సంభవించకుండా ఉంటుంది. సిస్టమ్ అడ్మినిస్ట్రేషన్‌లో సరైన డయాగ్నోసిస్ ఎక్కువగా వేగవంతమైన చర్య కంటే ముఖ్యమైనది.

సందిగ్ధ ప్రశ్నలు

Linux సర్వర్‌లో htop కమాండ్ ఉపయోగం ఏమిటి?

Linux సర్వర్‌లో htop కమాండ్ ప్రాసెస్ CPU, RAM, యూజర్, PID మరియు కమాండ్ వివరాలను రియల్ టైంలో చూపిస్తుంది. దీని ద్వారా CPU లేదా మెమరీ అధికంగా వినియోగించే స్క్రిప్ట్‌లను తక్షణం గుర్తించవచ్చు.

htop తో CPU ఎక్కువగా వినియోగించే స్క్రిప్ట్ ఎలా కనుగొనాలి?

htopలో CPU% కాలమ్ ఆధారంగా ప్రాసెస్‌లను సార్ట్ చేసి, ఎక్కువ కాలం టాప్‌లో ఉన్న ప్రాసెస్ PID, USER రాయండి. తరువాత ps -fp PID మరియు lsof -p PID కమాండ్లతో స్క్రిప్ట్ ఫైల్ పాత్ మరియు పని తెలుసుకోండి.

RAM వినియోగంలో MEM% లేదా VIRT ఏది ముఖ్యం?

RAM విశ్లేషణలో MEM% మరియు ముఖ్యంగా RES విలువలు నిజమైన మెమరీ వినియోగాన్ని చూపిస్తాయి. VIRT విలువ వర్చువల్ మెమరీ, ఎప్పుడూ నిజమైన RAM వినియోగం కాదు.

అధిక రిసోర్స్ వినియోగించే ప్రాసెస్‌ను వెంటనే kill -9 చేయడం సురక్షితమా?

సాధారణంగా కాదు. ముందు ప్రాసెస్ వివరాలు రిజిస్టర్ చేసి, ఫైల్ పాత్ పరిశీలించి, సాధారణ kill PID ప్రయత్నించాలి. kill -9 చివరి మార్గంగా మాత్రమే వాడాలి, ముఖ్యంగా సర్వర్ ఆరోగ్యం సీరియస్‌గా ప్రభావితం అయితే.

htop లో CPU usage ఎక్కువగా ఉండటం ఎప్పుడూ హ్యాక్ సూచననా?

కాదు. బ్యాకప్, ఇంపోర్ట్, cache నిర్మాణం లేదా అధిక ట్రాఫిక్ కూడా CPU పెంచుతుంది. కానీ అనారోగ్యమైన ఫైల్ పేర్లు, /tmp/uploads నుండి నడిచే స్క్రిప్ట్‌లు, అనుమానాస్పద యూజర్ ప్రాసెస్‌లు ఉంటే సెక్యూరిటీ సమస్యలు ఉండవచ్చు.

సారాంశంగా, Linux సర్వర్‌లో htop కమాండ్ CPU మరియు RAM ఎక్కువగా వినియోగించే స్క్రిప్ట్‌లను గుర్తించడానికి వేగవంతమైన, సులభమైన మరియు సమర్థవంతమైన మొదటి దశ. అత్యుత్తమ ఫలితాలకు htop డేటాను PID విశ్లేషణ, lsof, cron చెక్ మరియు లాగ్ విశ్లేషణతో కలిపి ఉపయోగించాలి. సర్వర్‌లో రిసోర్స్ సమస్యలు తరచుగా ఉంటే, సాఫ్ట్‌వేర్ ఆప్టిమైజేషన్ మరియు ఇన్‌ఫ్రాస్ట్రక్చర్ సామర్థ్యాన్ని కలిసి పరిశీలించండి; అవసరమైతే Hostragons యొక్క హోస్టింగ్, VPS మరియు SSL పరిష్కారాలను ఒత్తిడిలేకుండా పోల్చుకుని మీ ప్రాజెక్టుకు తగినవి ఎంచుకోండి.

ఈ వ్యాసాన్ని పంచుకోండి:

Hostragons బృందం

హోస్టింగ్, సర్వర్లు మరియు డొమైన్ పేర్లపై మా నిపుణుల బృందం నుండి తాజా మార్గదర్శకాలు. మీ ప్రాజెక్ట్ కోసం సరైన పరిష్కారాన్ని కలిసి కనుగొందాం.

మమ్మల్ని సంప్రదించండి