কীভাবে মেমরির ব্যবহার বুঝতে হয় এবং লিনাক্স সার্ভারে સરેરાશ লোড করা যায়


57

আমি একটি লিনাক্স সার্ভার ব্যবহার করছি যা 128 গিগাবাইটের মেমরি এবং 24 টি কোর। এটি ব্যবহার করা হয় তা দেখতে আমি শীর্ষ ব্যবহার করি। পোস্টের শেষে এটির আউটপুট আটকানো হয়। এখানে দুটি প্রশ্ন রয়েছে:

(১) আমি দেখতে পাচ্ছি যে চলমান প্রতিটি প্রক্রিয়া মেমরির একটি খুব সামান্য শতাংশ (% এমইএম 0.2% এর বেশি নয়, এবং সর্বাধিক মাত্র 0.0%) দখল করে আছে, তবে কীভাবে মোট মেমরি প্রায় আউটপুটের চতুর্থ লাইনে ব্যবহৃত হয় ( "মেম: 130766620 কে মোট, 130161072 কে ব্যবহৃত, 605548 কে ফ্রি, 919300 কে বাফার")? সমস্ত প্রক্রিয়াতে ব্যবহৃত মেমরির শতাংশের যোগফল প্রায় 100% অর্জনের সম্ভাবনা বলে মনে হয়, তাই না?

(২) প্রথম লাইনে লোড গড় কীভাবে বোঝা যাবে ("লোড গড়: 14.04, 14.02, 14.00")?

ধন্যবাদ এবং শুভেচ্ছা!

সম্পাদনা:

ধন্যবাদ!

আমি কোনও সার্ভারের ভারী চাপায় কিনা তা নির্ধারণের জন্য মেমোরির ব্যবহৃত শতাংশের উপর ভিত্তি করে কিছু মোটামুটি সংখ্যা শুনতে সত্যিই পছন্দ করি, যেহেতু আমি একবারে বর্তমান লোড না বুঝে সার্ভারকে ক্র্যাম করেছিলাম।

অদলবদল কি প্রায় স্মৃতি হিসাবে সমান? উদাহরণস্বরূপ, যখন মেমরি এবং অদলবদল প্রায় একই আকারের হয়, যদি মেমরিটি প্রায় শেষ হয়ে যায় তবে অদলবদলটি এখনও অনেকাংশে বিনামূল্যে থাকে, আমি কি কেবল এটি দেখতে পারি যেন মেমরির + শতাংশের অদলবদল এখনও উচ্চতর না থাকে এবং অন্যান্য নতুন চালায় প্রসেস?

আপনি কীভাবে একসাথে সিপিইউ বা মেমোরি (বা মেমরি + সোয়াপ) ব্যবহার বিবেচনা করবেন? তাদের দুজনের মধ্যে যদি খুব বেশি বা উভয় পৌঁছে যায় তবে আপনি কি চিন্তিত হয়ে পড়েছেন?

শীর্ষের আউটপুট :

। শীর্ষ

 
শীর্ষ - 12:45:33 19 দিন, 23:11, 18 জন ব্যবহারকারী, লোড গড়: 14.04, 14.02, 14.00
কার্য: 484 মোট, 12 টি চলমান, 472 ঘুমন্ত, 0 টি বন্ধ, 0 ​​জম্বি
সিপু (গুলি): 36.7% আমাদের, 19.7% সিআই, 0.0% এনআই, 43.6% আইডি, 0.0% ওয়া, 0.0% হাই, 0.0% সিআই, 0.0% সেন্ট
মেম: 130766620k মোট, 130161072k ব্যবহৃত, 605548k ফ্রি, 919300 কে বাফার
অদলবদল: 63111312 কে মোট, 500556 কে ব্যবহৃত, 62610756 কে বিনামূল্যে, 124437752 কে ক্যাশে

  পিআইডি ব্যবহারকারী পিআর এনআই ভাইরাস রি এসআরআর এস% সিপিইউ% মেমি সময় + কম্যান্ড
 6529 সানচেজ 18 -2 1075 মি 219 মি 13 মি এস 100 0.2 13760: 23 ম্যাটল্যাব
13210 টিমোথি 18 -2 48336 37 মি 1216 আর 100 0.0 3: 56.75 অযৌক্তিকতা
13888 টিমোথি 18 -2 48336 37 মি 1204 আর 100 0.0 2: 04.89 অযৌক্তিকতা
14542 টিমোথি 18 -2 48336 37 মি 1196 আর 100 0.0 1: 08.34 অযৌক্তিকতা
14544 টিমোথি 18 -2 2888 2076 400 আর 100 0.0 1: 06.14 সংগ্রহ ডেটা
 6183 সানচেজ 18 -2 1133 মি 195 মি 13 মি এস 100 0.2 13676: 04 ম্যাটল্যাব
 6795 সানচেজ 18 -2 1079 মি 210 মি 13 মি এস 100 0.2 13734: 26 ম্যাটল্যাব
10178 টিমোথি 18 -2 48336 37 মি 1204 আর 100 0.0 11: 33.93 অযৌক্তিকতা 
12438 টিমোথি 18 -2 48336 37 মি 1216 আর 100 0.0 5: 38.17 অযৌক্তিকতা
13661 টিমোথি 18 -2 48336 37 মি 1216 আর 100 0.0 2: 44.13 অযৌক্তিকতা
14098 টিমোথি 18 -2 48336 37 মি 1204 আর 100 0.0 1: 58.31 অযৌক্তিকতা
14335 টিমোথি 18 -2 48336 37 মি 1196 আর 100 0.0 1: 08.93 অবাস্তবতা
14765 টিমোথি 18 -2 48336 37 মি 1196 আর 99 0.0 0: 32.57 অযৌক্তিকতা
13445 টিমোথি 18 -2 48336 37 মি 1216 আর 99 0.0 3: 01.37 অযৌক্তিকতা
28990 রুট 20 0 0 0 0 এস 2 0.0 65: 50.21 পিডিফ্লুশ
12141 টিম 18 -2 19380 1660 1024 আর 1 0.0 0: 04.04 শীর্ষ
 1240 রুট 15 -5 0 0 0 এস 0 0.0 16: 07.11 কেজার্নাল্ড
 9019 মূল 20 0 296 মি 4460 2616 এস 0 0.0 82: 19.51 কেডিএম_গ্রেট
    1 মূল 20 0 4028 728 592 এস 0 0.0 0: 03.11 আরম্ভ
    2 মূল 15 -5 0 0 0 এস 0 0.0 0: 00.00 কেথ্রেড d
    3 মূল আরটি -5 0 0 0 এস 0 0.0 0: 01.01 মাইগ্রেশন / 0
    4 টি রুট 15 -5 0 0 0 এস 0 0.0 0: 08.13 ksoftirqd / 0
    5 মূল আরটি -5 0 0 0 এস 0 0.0 0: 00.00 ওয়াচডগ / 0
    6 মূল আরটি -5 0 0 0 এস 0 0.0 17: 27.31 মাইগ্রেশন / 1
    7 মূল 15 -5 0 0 0 এস 0 0.0 0: 01.21 ksoftirqd / 1
    8 টি মূল আরটি -5 0 0 0 এস 0 0.0 0: 00.00 ওয়াচডগ / 1
    9 মূল আরটি -5 0 0 0 এস 0 0.0 10: 02.56 মাইগ্রেশন / 2
   10 টি রুট 15 -5 0 0 0 এস 0 0.0 0: 00.34 ksoftirqd / 2
   11 রুট আরটি -5 0 0 0 এস 0 0.0 0: 00.00 ওয়াচডগ / 2
   12 রুট আরটি -5 0 0 0 এস 0 0.0 4: 29.53 মাইগ্রেশন / 3
   13 রুট 15 -5 0 0 0 এস 0 0.0 0: 00.34 ksoftirqd / 3

2
স্মৃতি সম্পর্কে ভাল উত্তরের জন্য এটি দেখুন। serverfault.com/questions/38065/#38074
জোরডাচি

এবং লোড গড় সম্পর্কে দ্রুত সংক্ষিপ্তসার জন্য এই উত্তর (বা বিশদটির জন্য এটি দীর্ঘ-পঠিত )।
নিকোলায়

উত্তর:


56

(১) আমি দেখতে পাচ্ছি যে চলমান প্রতিটি প্রক্রিয়া মেমরির একটি খুব সামান্য শতাংশ (% এমইএম 0.2% এর বেশি নয়, এবং সর্বাধিক মাত্র 0.0%) দখল করে আছে, তবে কীভাবে মোট মেমরি প্রায় আউটপুটের চতুর্থ লাইনে ব্যবহৃত হয় ( "মেম: 130766620 কে মোট, 130161072 কে ব্যবহৃত, 605548 কে ফ্রি, 919300 কে বাফার")? সমস্ত প্রক্রিয়াতে ব্যবহৃত মেমরির শতাংশের যোগফল প্রায় 100% অর্জনের সম্ভাবনা বলে মনে হয়, তাই না?

আপনি বর্তমানে কত স্মৃতি ব্যবহার করছেন তা দেখতে চালনা করুন free -m। এটি আউটপুট সরবরাহ করবে:

             মোট ব্যবহৃত নিখরচায় ভাগ করা বাফার ক্যাশেড
মেম: 2012 1923 88 0 91 515
- / + বাফার / ক্যাশে: 1316 695
অদলবদল: 3153 256 2896

উপরের সারিটি 'ব্যবহৃত' (1923) মান প্রায় সর্বদা শীর্ষ সারির মেমো মান (2012) এর সাথে প্রায় মিলবে। যেহেতু লিনাক্স ডিস্ক ব্লকগুলি (515) ক্যাশে কোনও অতিরিক্ত মেমরি ব্যবহার করতে পছন্দ করে।

দেখার জন্য ব্যবহৃত ব্যবহৃত চিত্রে হ'ল বাফার / ক্যাশে সারি ব্যবহৃত মান (1316)। আপনার অ্যাপ্লিকেশনগুলি বর্তমানে কতটা জায়গা ব্যবহার করছে তা এটি। সেরা পারফরম্যান্সের জন্য, এই সংখ্যাটি আপনার মোট (2012) মেমরির চেয়ে কম হওয়া উচিত। স্মৃতি ত্রুটিগুলি রোধ করতে, এটি মোট মেমরি (2012) এবং অদলবদল (3153) এর চেয়ে কম হওয়া দরকার।

আপনি যদি তাড়াতাড়ি দেখতে চান যে বাফার / ক্যাশে সারি নিখরচায় (695) মেমরিটি কতখানি ফ্রি চেহারা। এটি মোট স্মৃতি (2012) - আসল ব্যবহৃত (1316)। (2012 - 1316 = 696, 695 নয়, এটি কেবল একটি গোলাকার সমস্যা হবে)

(২) প্রথম লাইনে লোড গড় কীভাবে বোঝা যাবে ("লোড গড়: 14.04, 14.02, 14.00")?

লোড গড় সম্পর্কে এই নিবন্ধটি একটি দুর্দান্ত ট্র্যাফিক উপমা ব্যবহার করেছে এবং এটি এখন পর্যন্ত আমি খুঁজে পেয়েছি সেরা: লিনাক্স সিপিইউ বোঝা বোঝা - আপনার কখন উদ্বেগ হওয়া উচিত? । আপনার ক্ষেত্রে যেমন লোকেরা উল্লেখ করেছে:

মাল্টি-প্রসেসর সিস্টেমে, লোড উপলব্ধ প্রসেসরের কোরগুলির সংখ্যার তুলনায়। "100% ব্যবহার" চিহ্নটি একটি একক-কোর সিস্টেমে 1.00, ডুয়াল-কোরে 2.00, কোয়াড-কোরে 4.00 ইত্যাদি etc.

সুতরাং, 14.00 এবং 24 কোরের লোড গড় দিয়ে আপনার সার্ভারটি ওভারলোড হওয়া থেকে অনেক দূরে।


17

লিনাক্স সহ ইউনিক্সের মতো সিস্টেমগুলি উপলভ্য র‌্যামের সর্বাধিক দক্ষ ব্যবহারের জন্য ডিজাইন করা হয়েছে। খুব সাধারণ পদে, প্রতিটি এমবি র‌্যামের মধ্যে 3 টি রাষ্ট্র থাকতে পারে:

  1. বিনামূল্যে
  2. একটি প্রক্রিয়া দ্বারা ব্যবহৃত
  3. বাফারদের জন্য ব্যবহৃত

3 য় রাজ্যটি কেবল স্ক্র্যাচ স্পেস হিসাবে ব্যবহৃত হয় এবং যখনই প্রয়োজন হয় তখনই তাকে পুনর্নির্দিষ্ট করা হয়, যেমন প্রোগ্রামগুলির জন্য আপনার মোট উপলব্ধ মেমরিটি সত্যই ফ্রি + ইউজডফুফারস is যেমন, আপনি কোনও নির্দিষ্ট প্রক্রিয়া হিসাবে নির্ধারিত হিসাবে বাফার বরাদ্দ স্থান সত্যই দেখবেন না।

আপনার লোড গড় প্রশ্নটি কিছুটা আকর্ষণীয়, কারণ এটি সহজেই ভুল ব্যাখ্যা করা যায়। সম্পূর্ণ গল্পের জন্য এই লিনাক্সজার্নাল নিবন্ধটি দেখুন । সেরা সংক্ষেপটি নিবন্ধের সরাসরি উদ্ধৃতি,

লিনাক্সের রান কাতারে চলমান বা নিরবচ্ছিন্ন চিহ্নিত প্রক্রিয়াগুলির চলমান গড় হিসাবে লোড-গড় গণনাটি সবচেয়ে ভাল বিবেচনা করা হয়

অর্থ, আপনি নিজের লোড গড়কে (চলমান প্রক্রিয়াগুলির # হিসাবে) + (আইওতে অপেক্ষা করার প্রক্রিয়াগুলির #) হিসাবে ভাবতে পারেন। মনে রাখবেন যে কোনও সময় আপনি processes CORE সংখ্যা কার্যকর করতে পারেন, আমি বলতে পারি যে আপনার 14 এর লোড গড় বেশ কম।


ধন্যবাদ! ভারী বোঝা বোঝা এবং নতুন প্রক্রিয়া না চালানোর জন্য ভাল হিসাবে বিবেচিত মেমোরির (বা মেমরি + স্ব্যাপ) শতাংশের পরিমাণটি কী? আপনি কি মেমরি বা স্মৃতি + অদলবদল উভয়ই তাকান? উপরে পরিবর্তিত ব্যবহৃত অদলবদলগুলি অদলবদলের আকারটি আসলে ব্যবহৃত হয়? সিপিইউ লোড গড় সম্পর্কে, আপনি কি "লোড গড় / মূল সংখ্যা" দ্বারা প্রকৃত লোডটি পরিমাপ করেন? আপনি সার্ভারের ভারী বোঝা হয়েছে তা কতটুকু বিবেচনা করবেন? ধন্যবাদ এবং শুভেচ্ছা!
টিম

2
লোড কেবল একটি সূচক। একটি সাধারণ নিয়ম হিসাবে, কোরের চেয়ে বেশি বোঝা একটি খারাপ জিনিস। সাধারণত একটি উচ্চ শতাংশের স্মৃতি ব্যবহার করা খারাপ জিনিস। এটি একটি বাইনারি মান নয় যা আপনি বলতে পারেন 'এটি অনেক ভাল'। আপনি যদি র‌্যামের বাইরে চলে যান তবে আরও প্রক্রিয়া চালানোর মতো পর্যাপ্ত পরিমাণ আপনার নেই। আপনি যদি না চালিয়ে যান তবে আপনি প্রচুর পরিমাণে পেয়েছেন। এটি আপনার পরিস্থিতির নির্দিষ্টকরণের উপর খুব নির্ভরশীল dependent
সিয়ান

4

থেকে sarমানুষ পৃষ্ঠা:

       লোড গড়কে রান রানযোগ্য বা এর গড় সংখ্যা হিসাবে গণনা করা হয় 
       চলমান কার্যগুলি (আর-স্টেট), এবং নিরবচ্ছিন্ন কাজগুলির সংখ্যা
       নির্দিষ্ট ব্যবধানের উপরে ঘুম (ডি স্টেট)

থেকে uptimeমানুষ পৃষ্ঠা:

       সিস্টেম লোড গড়গুলি হল হয় প্রক্রিয়াগুলির গড় সংখ্যা
       একটি চলমান বা নিরবচ্ছিন্ন অবস্থায়। একটি চলমান অবস্থায় একটি প্রক্রিয়া
       হয় সিপিইউ ব্যবহার করছে বা সিপিইউ ব্যবহারের অপেক্ষায় রয়েছে। আনইনে একটি প্রক্রিয়া
       ভয়াবহ অবস্থা কিছু আই / ও অ্যাক্সেসের জন্য অপেক্ষা করছে, যেমন ডিস্কের জন্য অপেক্ষা করছে।
       গড় তিনটি সময়ের ব্যবধানে নেওয়া হয়। লোড গড়
       কোনও সিস্টেমে সিপিইউর সংখ্যার জন্য স্বাভাবিক করা হয় না, সুতরাং একটি লোড অ্যাভার‐
       1 বছরের বয়সের অর্থ একটি সিঙ্গেল সিপিইউ সিস্টেম 4 এ থাকাকালীন সর্বদা লোড হয়
       সিপিইউ সিস্টেম এর অর্থ এটি 75% সময় অলস ছিল।

3
  1. লিনাক্স, কিছু সময়ের জন্য, তার স্মৃতিটিকে এমনভাবে পরিচালনা করেছে যা topসাধারণত কোনও ব্যবহারকারী প্রক্রিয়া দ্বারা প্রয়োজনীয় না হলে মেশিনের বেশিরভাগ স্মৃতি বিভিন্ন ব্যবহারের জন্য বরাদ্দ রাখে ically
  2. লোড গড়টি চলমান বা চালানোর জন্য অপেক্ষা করা প্রসেসের গড় সংখ্যা। এটির সাথে সিস্টেমের বিলম্বিতা / প্রতিক্রিয়াশীলতার সাথে একটি দৃ negative় নেতিবাচক সম্পর্ক থাকে, তাই আপনি এটি যতটা সম্ভব কম চান। যেহেতু আপনার প্রতিটি সিপিইউ যে কোনও সময় কোনও কিছু চলমান থাকতে পারে, তবে আপনি 14 এ বেশ ভাল করছেন বলে মনে হচ্ছে।

ধন্যবাদ! 1 সম্পর্কিত, আপনার অর্থ কি কিছু প্রক্রিয়া শীর্ষে প্রদর্শিত হয় না তবে প্রচুর স্মৃতি ব্যবহার করছে? বা স্মৃতি সম্পর্কে আউটপুটটির চতুর্থ লাইন ("মেমো: 130766620k মোট, 130161072k ব্যবহৃত, 605548k ফ্রি, 919300k বাফার") বিভ্রান্তিকর, আমার উপরে এবং আমার ক্ষেত্রে প্রদর্শিত সমস্ত প্রক্রিয়া দ্বারা ব্যবহৃত মেমরির শতাংশের যোগফলের দিকে নজর দেওয়া উচিত আমি নিরাপদে কিছু নতুন মেমরি গ্রাসকারী প্রক্রিয়া চালাতে পারি?
টিম

2
অন্যান্য উত্তরগুলি যেমন নির্দেশ করেছে, লোড গড়কে প্রসেসরের সংখ্যার সাথে তুলনা করা উচিত, সুতরাং 24-কোর সিস্টেমে 14 তেমন কিছু নয়। এটি একক-কোর সিস্টেমে (ভাল ধরণের) 14/24 = 0.58 এর মতো হবে।
ডেভিড জেড

@ টিম: আমার মানে পরেরটি।
বিশৃঙ্খলা

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.