আমার কি উদ্বিগ্ন হওয়া উচিত যে প্রায় 40 গিগাবাইট ফ্রি মেমরির সাহায্যে কোনও হোস্টে অদলবদল ব্যবহৃত হচ্ছে?


39

আমার নীচে একটি প্রোডাকশন হোস্ট রয়েছে:

htop

প্রায় 40 জিবি ফ্রি, অব্যবহৃত মেমরি স্পেস বজায় রাখার সময় সিস্টেমটি 1 জিবি অদলবদল ব্যবহার করছে। আমার কি এই সম্পর্কে উদ্বিগ্ন হওয়া উচিত, না এটি বেশিরভাগ ক্ষেত্রেই স্বাভাবিক?


23
প্রকৃতপক্ষে, আপনার প্রায় 40 গিগাবাইটের মেমরির অপচয় হয়ে আসল লোড সহ একটি উত্পাদন হোস্ট সম্পর্কে উদ্বিগ্ন হওয়া উচিত। অবশ্যই সেই স্মৃতিটিকে রাখার জন্য এটির কিছু ব্যবহার খুঁজে পেতে পারে - অ্যাপ্লিকেশনগুলি ডিস্কগুলিতে অ্যাক্সেস করছে, এটি কি সেই স্মৃতিটিকে সেই ডেটাগুলির কিছু ক্যাশে করতে, আই / ওএস হ্রাস করতে এবং এর কার্যকারিতা উন্নত করতে পারে না? 40GB স্মৃতি কেন কাজ করছে এমন মেশিনে নষ্ট হচ্ছে? এটাই আপনার উদ্বিগ্ন হওয়া উচিত। এটাই স্বাভাবিক নয়।
ডেভিড শোয়ার্টজ

25
আপনি যদি আমাদের আউটপুট দেখান তবে এটি সত্যই আরও কার্যকর হবে free -m। গ্রাফিক্স পড়া কঠিন।
ব্যবহারকারী 9517 GoFundMonica

@ ডেভিডশওয়ার্টজ - আমার একটি সম্পর্কিত প্রশ্ন রয়েছে যা এখনও এটিতে সক্রিয় রয়েছে। serverfault.com/questions/825909/…
মিঃডুক

উত্তর:


68

এটি কোনও সমস্যা নয় এবং সম্ভবত এটি স্বাভাবিক। প্রচুর কোড (এবং সম্ভবত ডেটা) খুব কম ব্যবহার করা হয় তাই মেমরিটি মুক্ত করতে সিস্টেম এটিকে অদলবদল করবে।

অদলবদল মেমরি অবিচ্ছিন্নভাবে আউট এবং আউট করা হয় শুধুমাত্র যদি শুধুমাত্র অদলবদল হয়। এটি সেই ধরণের ক্রিয়াকলাপ যা কার্য সম্পাদনকে হত্যা করে এবং সিস্টেমে অন্য কোথাও একটি সমস্যা প্রস্তাব করে।

আপনি যদি নিজের অদলবদলের ক্রিয়াকলাপটি নিরীক্ষণ করতে চান তবে vmstatবেশ কয়েকটি ইউটিলিটি সহ আপনি যা করতে পারেন তবে বেশিরভাগ ক্ষেত্রে যেমন দরকারী

$ vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0      0 348256  73540 274600    0    0     1     9    9    6  2  0 98  0  0
 0  0      0 348240  73544 274620    0    0     0    16   28   26  0  0 100  0  0
 0  0      0 348240  73544 274620    0    0     0     0   29   33  0  0 100  0  0
 0  0      0 348240  73544 274620    0    0     0     0   21   23  0  0 100  0  0
 0  0      0 348240  73544 274620    0    0     0     0   24   26  0  0 100  0  0
 0  0      0 348240  73544 274620    0    0     0     0   23   23  0  0 100  0  0

সিস্টেমটি শুরু হওয়ার পর থেকে ক্রিয়াকলাপ হিসাবে এটি প্রথম লাইনে উপেক্ষা করুন। নীচে siএবং soকলামগুলি নোট করুন ---swap--; বেশিরভাগ সময়ের জন্য যদি 0 না হয় তবে তাদের সাধারণত মোটামুটি ছোট পরিসংখ্যান হওয়া উচিত।

এছাড়াও উল্লেখ করার মতো বিষয় হল যে এই প্রিপ্রিমটিভ অদলবদলটি কার্নেল সেটিং দ্বারা নিয়ন্ত্রণ করা যেতে পারে। ফাইলটিতে /proc/sys/vm/swappiness0 এবং 100 এর মধ্যে একটি সংখ্যা রয়েছে যা কার্নেলকে জানায় যে কীভাবে আক্রমণাত্মকভাবে মেমরি সরিয়ে নিতে হয়। এটি কী সেট করা আছে তা দেখতে ফাইলটিকে ক্যাট করুন। ডিফল্টরূপে, বেশিরভাগ লিনাক্স ডিফল্টটিকে 60 এ বিভ্রান্ত করে, তবে আপনি যদি স্মৃতিশক্তি শেষ হয়ে যাওয়ার আগে কোনও অদলবদল দেখতে না চান, তবে ফাইলটিতে 0 টি প্রতিধ্বনি করুন:

echo 0 >/proc/sys/vm/swappiness

যোগ করে এটি স্থায়ী করা যায়

vm.swappiness = 0

to /etc/sysctl.conf


14
এছাড়াও উল্লেখ করার মতো বিষয় হল যে এই প্রিপ্রিমটিভ অদলবদলটি কার্নেল সেটিং দ্বারা নিয়ন্ত্রণ করা যেতে পারে। / Proc / sys / vm / swappiness এ ফাইলটিতে 0 এবং 100 এর মধ্যে একটি সংখ্যা থাকে যা কার্নেলকে জানায় যে মেমরিটিকে কীভাবে আবর্তিত করা যায় aggressive এটি কী সেট করা আছে তা দেখতে ফাইলটিকে ক্যাট করুন। ডিফল্টরূপে, সবচেয়ে লিনাক্স ডিস্ট্রো থেকে 60 এই ডিফল্ট, কিন্তু আপনি যদি কোন সোয়াপিং দেখতে আগে মেমরির ক্লান্ত হয় না চান, তবে এই মত ফাইলে 0 echo: echo 0 >/proc/sys/vm/swappiness। এটি vm.swappiness = 0/etc/sysctl.conf এ যুক্ত করে স্থায়ী করা যায় ।
কুমারী

@ ভাইরেক্স: আমি আমার ডেস্কটপে অদলবদল = 1, বা 10 এর চেয়ে কম কিছু ব্যবহার করতে চাই। এটি বেশিরভাগ সময় সার্ভারগুলিতেও ভাল করতে পারে। সম্পূর্ণরূপে নিষেধ না করে আরও পৃষ্ঠাগুলির জন্য র‌্যাম মুক্ত করার জন্য অদলবদলকে অদম্যভাবে নিরুৎসাহিত করুন।
পিটার কর্ডেস

1
@ পিটারকর্ডস সার্ভারগুলির যত্ন নিন, বিশেষত যারা ডেটাবেস অ্যাক্সেস করে বা ফাইল সরবরাহ করে serving এগুলি ফাইল ক্যাশে উপলব্ধ হয়ে মেমরি থেকে প্রচুর উপকৃত হতে পারে।
জোনাস শ্যাফার

4
@ জোনাস উইলিকি: এমনকি swappiness=7দীর্ঘমেয়াদী অব্যবহৃত পৃষ্ঠাগুলি সরিয়ে ফেলা যায়। swappiness=0এমনকি অন্য যে কোনও মান, এমনকি নিম্ন মানের মধ্যে একটি বড় পার্থক্য রয়েছে । কার্নেল-ডিফল্ট swappiness=60সার্ভারগুলির জন্য সাধারণত ভাল এবং এটি কেবলমাত্র ডেস্কটপ ইন্টারেক্টিভ ব্যবহারের জন্য যেখানে কম স্বচ্ছলতা ভাল। তবে এটি 7 বা কিছুতে সেট করার ফলে খুব বেশি আঘাত করা উচিত নয়। (তবে আমি পরীক্ষা করে দেখিনি, আমি কোনও সার্ভার সিসাদমিন নই)।
পিটার

2
@ পিটারকর্ডস যতক্ষণ না আপনি মেমরির চাপ দিন, কোনও swappinessকাজ দুর্দান্ত। চাপ সহ, আপনি দেখতে পাবেন যে সময়কাল বর্ধিত সময়ের জন্য swappiness=7ফাইল ক্যাশে প্রায় পুরোপুরি অনাহারিত হয় , যখন swappiness=60প্রচুর পরিমাণে ক্যাশে তলিয়ে যায় তবে কয়েক সেকেন্ডের মধ্যেই বদলে যেতে শুরু করে। এটি এখনও ক্যাশে যা মারধর করে, তবে আরও সুষম ভাবে।
kubanczyk

25

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

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

অনুরূপ কারণে, আপনার স্মৃতি সর্বদা পূর্ণ থাকতে হবে। মেমরি পৃষ্ঠাগুলি, ফাইল সিস্টেম ক্যাশে, tmpfsমেমরিতে রাখা যেতে পারে যে অনেক কিছুই আছে। সত্যিই, আপনার স্মৃতিশক্তি ফাঁকা থাকলে আপনার উদ্বিগ্ন হওয়া উচিত; সর্বোপরি, আপনি এর জন্য প্রচুর অর্থ প্রদান করেছেন (কমপক্ষে একই পরিমাণ ডিস্ক জায়গার তুলনায়), সুতরাং এটি আরও ভাল ব্যবহার করা উচিত!


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

11

ব্যবহৃত অদলবদল খারাপ নয়, তবে প্রচুর অদলবদলের ক্রিয়াকলাপ

  vmstat 1
  procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
  6  0 521040 114564   6688 377308    8   13   639   173    0 1100  5  4 90  0
  1  0 521040 114964   6688 377448    0    0   256     0    0 1826  3  4 94  0
  0  0 521040 115956   6688 377448    0    0     0     0    0 1182  7  3 90  0
  0  0 521036 115992   6688 377448    4    0    16     0    0 1154 10  2 88  0
  3  0 521036 114628   6696 377640    0    0   928   224    0 1503 15 17 67  1

কলামটি অদলবদল করার কোনও সমস্যা নেই is কলাম অ শূন্য মান এসআই এবং তাই সার্ভার কার্য-সম্পাদনায় মারাত্মক হয়। বিশেষত প্রচুর র‌্যামযুক্ত

বেশ কয়েকটি জিবি র‌্যাম সহ মেশিনগুলিতে সোয়াপিনেস অক্ষম করা ভাল:

sysctl -w vm.swappiness=0

এটি অদলবদাকে অক্ষম করবে না। এটি কেবল লিনাক্সকে সর্বশেষ রিসর্টের পরিমাপ হিসাবে অদলবদল ব্যবহার করার নির্দেশ দেবে। এটি কয়েক মেগাবাইটের প্রোগ্রামগুলিকে নষ্ট করবে যা র‌্যামে থাকার দরকার নেই ... তবে আপনার ডিস্ক অ্যাক্সেসের সারিগুলি স্ফীত করে নেওয়া ভাল।

সম্পাদনা 1: কেন অদলবদলের ডিফল্ট মান অনুকূল নয়

আমরা দুই দশক আগে মনে রাখতে পারি একটি বড় 486 এর মধ্যে কেবল 32Mb র‌্যাম ছিল। পুরো র‌্যামটি দ্বিতীয় সেকেন্ডের একটি ছোট ভগ্নাংশে ডিস্কে স্থানান্তরিত হতে পারলে অদলবদল অ্যালগরিদমগুলি তৈরি করা হয়েছিল। এমনকি সেই সময়ের ধীর ডিস্কগুলির সাথেও। এই কারণেই ডিফল্ট অদলবদল নীতিগুলি এত আক্রমণাত্মক। র‌্যাম সেদিনের বাধা ছিল। তার পর থেকে র‌্যামের আকার 10,000 বারেরও বেশি বেড়েছে এবং ডিস্কের গতি 10 বারেরও কম। এটি ডিস্ক ব্যান্ডউইথগুলিতে বাধাটি স্থানান্তরিত করে।

সম্পাদনা 2: কেন তাই ক্রিয়াকলাপ সার্ভারদের জন্য মারাত্মক?

যদি এবং তাই র্যাম টন সঙ্গে মেশিনে কার্যকলাপ মারাত্মক হয় মানে কারণ সিস্টেম র্যাম জন্য নিজেই সঙ্গে লড়াই করছে। যা ঘটে তা হ'ল র‌্যামের তুলনায় ডিস্কগুলি, এমনকি বড় স্টোরগুলিও খুব ধীর slow আগ্রাসী অদলবদল অ্যাপ্লিকেশন ডেটার চেয়ে কার্নেল ডিস্ক ক্যাশে সমর্থন করে এবং র‌্যামের জন্য লড়াইয়ের সবচেয়ে সাধারণ উত্স। যেহেতু ওএসকে প্রতি সি- তে ডিস্ক ক্যাশে ফ্রি করতে হবে , তাই স্যুপের যে অতিরিক্ত ক্যাশে বাস করে তা বেঁচে থাকার সময়টি যাইহোক কার্যকর হতে পারে না। ফলস্বরূপ আপনি ক্যাশে সঞ্চয় করার জন্য ডিস্ক ব্যান্ডউইথ গ্রহণ করছেন যা সম্ভবত ব্যবহৃত হবে না এবং আপনার প্রোগ্রামগুলিকে সি পৃষ্ঠাগুলির জন্য অপেক্ষা করতে বিরতি দিন । এর অর্থ যা অ্যাপ্লিকেশনগুলিতে অল্প বা কোনও উপকার সহ প্রচুর সমালোচনামূলক সংস্থান গ্রহণ করে।

প্রতিক্রিয়ার শিরোনামটি "প্রচুর র‌্যামের সাথে সার্ভারগুলিতে প্রচুর অদলবদল করা উচিত" নোট করুন। এটি মাঝেমধ্যে সি এবং তাই ক্রিয়াকলাপ সহ মেশিনগুলিতে প্রযোজ্য না। যদি ওএসগুলিতে স্মার্ট স্মার্ট অ্যালগরিদমগুলি বিকাশ করা হয় তবে এটি ভবিষ্যতে প্রযোজ্য হবে না।

3 সম্পাদনা করুন: "ঠান্ডা" পৃষ্ঠাগুলি

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

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

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


9
"সোয়াপিনেস অক্ষম করার সেরা" সেরা, কেন? (সেরা, কী উদ্দেশ্যে?) ডিফল্টটি সব ব্যবহারের জন্য সঠিক নাও হতে পারে তবে এটি পরিবর্তন করার জন্য আমার এখনও একটি কারণ প্রয়োজন।
jpaugh

3
siআপনার সার্ভারের চেয়ে কীভাবে মারাত্মক bi? উভয় মানেই কিছু প্রোগ্রাম 4096 বাইটের জন্য ডিস্ক থেকে মেমোরিতে পড়ার অপেক্ষায় থাকে। biকোন ফাইল থেকে, এবং siফাইল একটি নির্দিষ্ট সংকীর্ণ বিভাগ থেকে (কিন্তু তাদের বাইট সরাতে ঠিক যেমন দ্রুত ঠিক একই পথে)।
কুবানচেক

2
128 এমবি র‌্যাম সহ একটি 486 খুব বিরল ছিল এবং এটি একটি মেইনফ্রেম বা সুপার কম্পিউটার হিসাবে বিবেচিত হত - সুতরাং সিপিইউটি সম্ভবত 486 হত। আমার পুরানো 486 র‌্যাম 4MB ছিল এবং আমি 16MB র‌্যামের সাথে আমার বন্ধুর মেশিনে enর্ষা করছিলাম (বড় সার্ভারগুলি) র‌্যাম 16 থেকে 32 এমবি ছিল)। পেন্টিয়ামগুলিতে দ্রুত এগিয়ে যাওয়া এবং আমরা সাধারণ হিসাবে 8 থেকে 16 এমবি দেখতে শুরু করি। যখন পেন্টিয়াম 3 প্রথম প্রদর্শিত হয়েছিল (যখন সিপিইউগুলি সাধারণত 1GHz ছাড়িয়ে শুরু করে) 32MB স্বাভাবিক ছিল এবং ওয়েব সার্ভারগুলিতে সাধারণত 64 থেকে 128MB থাকে।
slebetman

swappiness=0সার্ভারগুলির জন্য সম্পূর্ণ অনুপযুক্ত বলে মনে হচ্ছে। আপনি এটি একটি ইন্টারেক্টিভ ডেস্কটপ সিস্টেমের জন্য বিবেচনা করতে পারেন (তবে তারপরেও swappiness=1শেষ পর্যন্ত সত্যিকারের শীতল পৃষ্ঠাগুলি অদলবদলের জন্য আরও ভাল পছন্দ)। অন্য উত্তরে মন্তব্য দেখুন । swappiness=7বা কোনও কিছু OOM অবধি র‌্যামে শীতল পৃষ্ঠাগুলি পিন না করে অদলবদলের ক্রিয়াকলাপ নাটকীয়ভাবে হ্রাস করবে এবং আপনি যদি মনে করেন 60যে কোনও নির্দিষ্ট সার্ভারের জন্য খুব অদলবদল হয়।
পিটার কর্ডেস

1
@ কুবানজিক: আমি মনে করি siএর চেয়েও খারাপ bi। বেশিরভাগ সার্ভার সফ্টওয়্যারটি এই ধারণাটি ঘিরে তৈরি করা হয়েছে যে ডিস্ক থেকে আই / ও ধীর হতে পারে এবং থ্রেড, অ্যাসিঙ্ক আই / ও, বা আই / ও-তে অপেক্ষা করার সময় সাধারণভাবে প্রতিক্রিয়াশীল থাকার জন্য অন্য কোনও কৌশল ব্যবহার করে। একটি পৃষ্ঠা ত্রুটি যে কোনও জায়গায় ঘটতে পারে। সবচেয়ে খারাপ ক্ষেত্রে, একটি লক নেওয়ার পরে ধীর পৃষ্ঠার ত্রুটি ঘটতে পারে other 10 টাকায় (ধীরে রোটাল স্টোরেজ অদলবদল করে) 10 টাকার বিনিময়ে এই সমালোচনামূলক বিভাগে প্রবেশ করা থেকে সমস্ত অন্যান্য থ্রেডকে ব্লক করে। কোনও সমালোচনামূলক বিভাগ যদি কোনও ভাগ করা ডেটা কাঠামো থেকে কোনও সম্ভাব্য-ঠান্ডা পৃষ্ঠায় অনুলিপি করে থাকে তবে এটি প্রশংসনীয় হতে পারে।
পিটার

8

এটি আপনার প্রশ্নের উত্তর নয়; পরিবর্তে, আপনাকে একটি সুবিদিত সিদ্ধান্ত নিতে সহায়তা করার জন্য কেবল অতিরিক্ত তথ্য।

আপনি যদি জানতে চান যে কোন প্রক্রিয়াগুলি বিশেষত কতগুলি অদলবদল ব্যবহার করছে, এখানে একটি ছোট শেল স্ক্রিপ্ট রয়েছে:

#!/bin/bash

set -o posix
set -u

OVERALL=0
for DIR in `find /proc/ -maxdepth 1 -type d -regex "^/proc/[0-9]+"` ; do
  PID=`echo $DIR | cut -d / -f 3`
  PROGNAME=`ps -p $PID -o comm --no-headers`

  SUM=0
  for SWAP in `grep Swap $DIR/smaps 2>/dev/null| awk '{ print $2 }'` ; do
    let SUM=$SUM+$SWAP
  done
  echo "PID=$PID - Swap used: $SUM - ($PROGNAME )"

  let OVERALL=$OVERALL+$SUM
done
echo "Overall swap used: $OVERALL"

আমার আরও যোগ করা উচিত যে টিএমপিএফগুলিও সরে যায়। এটি সিস্টেমড ব্যবহার করে আধুনিক লিনাক্স সিস্টেমে বেশি ব্যবহৃত যা tmpfs ব্যবহার করে ব্যবহারকারী-স্থান / tmp ওভারলে তৈরি করে।


দুর্দান্ত স্ক্রিপ্ট। গন্ধেও একবার দেখুন।
ব্যবহারকারী 9517 GoFundMonica

আমার মনে হয় আপনি লিখতে পারে যে অনেক আরো দক্ষতার ( পর্যন্ত কম Forked প্রসেস) সঙ্গে awk '/Swap/ {sw += $2} FNR==1 { /*first line of a new file */ find the command somehow, maybe still fork/exec ps;} END { print totals }' /proc/[0-9]*/smaps। এটি প্রতিটি প্রক্রিয়াটির জন্য কাটা এবং পিএস চালায় এবং সিস্টেমের প্রতিটি প্রক্রিয়ার জন্য গ্রেপ + অজানা কয়েকবার।
পিটার কর্ডেস

0

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

ডিবিএ বিশ্বে sensক্যমত্য বলে মনে হয় যে "এটি সাধারণ জ্ঞান যে আপনি যখন মাইএসকিউএল চালাচ্ছেন (বা সত্যিই অন্য কোনও ডিবিএমএস) আপনি আপনার অদলবদল স্থানটিতে কোনও আই / ও দেখতে চান না the ক্যাশের আকার স্কেলিং (ব্যবহার করে মাইএসকিউএল এর ক্ষেত্রে ইনডোড_বফার_পুল_সাইজ) পর্যাপ্ত ফ্রি মেমরি রয়েছে তাই স্যুপের প্রয়োজন হয় না তা নিশ্চিত করার জন্য এটি স্ট্যান্ডার্ড অনুশীলন।

তবে আপনি যদি কিছু ভুল বা ভুল গণনা করেন এবং অদলবদল হয় তবে কী হবে? এটি কার্য সম্পাদনকে কতটা প্রভাবিত করে? আমি তদন্তের ঠিক এটাই স্থির করেছিলাম। "

আমি আশা করি পাঠকরা নীচের লিঙ্কগুলি এপ্রোপোস পাবেন।

https://www.percona.com/blog/2017/01/13/impact-of-swapping-on-mysql-performance/

https://www.percona.com/blog/2010/01/18/why-swapping-is-bad-for-mysql-performance/


1
সার্ভার ফল্ট আপনাকে স্বাগতম! যতক্ষণ এই তাত্ত্বিক প্রশ্নের উত্তর হতে পারে, এটা বাঞ্ছনীয় হবে উত্তর অপরিহার্য অংশের এখানে অন্তর্ভুক্ত করা, এবং রেফারেন্স এর জন্য লিঙ্ক প্রদান।
ফ্রেডেরিক নীলসেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.