আমার কি লিনাক্স ওয়েবসার্ভারের জন্য সম্পূর্ণ অদলবদল বন্ধ করা উচিত?


22

সম্প্রতি আমার বন্ধু আমাকে জানিয়েছিল যে পর্যাপ্ত মেমরির সাথে লিনাক্স ওয়েব সার্ভারগুলিতে অদলবদল বন্ধ করা ভাল ধারণা। আমার সার্ভারে 12 গিগাবাইট রয়েছে এবং বর্তমানে 4 জিবি (ক্যাশে এবং বাফার গণনা করা হচ্ছে না) পিক লোডের নিচে ব্যবহার করা হয়।

তার যুক্তি ছিল যে কোনও সাধারণ পরিস্থিতিতে সার্ভার কখনই তার সমস্ত র‍্যাম ব্যবহার করে না তাই কেবলমাত্র কিছু বাগ / ডিডো / ইত্যাদি কারণে আউটঅফেমরির পরিস্থিতির মুখোমুখি হতে পারে। সুতরাং যদি অদলবদল বন্ধ থাকে তবে সিস্টেমটি মেমরির বাইরে চলে যাবে যা শেষ পর্যন্ত প্রোগ্রামটি হগিং মেমোরি (সম্ভবতঃ ওয়েব সার্ভার প্রক্রিয়া) এবং সম্ভবত কিছু অন্যান্য প্রক্রিয়া ক্র্যাশ করবে। যদি অদলবদল চালু থাকেএটি র‌্যাম এবং অদলবদু উভয়ই খাবে এবং শেষ পর্যন্ত একই ক্রাশের ফলাফল ঘটবে, তবে এর আগে এটি sshd এর মতো গুরুত্বপূর্ণ প্রক্রিয়াগুলি অফলোড করে অদলবদলের অপারেশন করতে শুরু করবে এবং এর ফলে বড় ধীরগতি দেখা দেবে। এই পদ্ধতিতে যখন ডিডোস সিস্টেমের অধীনে বিশাল ল্যাগের কারণে সম্পূর্ণ অপ্রয়োজনীয় অবস্থায় যেতে পারে এবং আমি সম্ভবত লগ ইন করতে এবং ওয়েবসার্ভার প্রক্রিয়াটি মারতে বা সমস্ত আগত ট্র্যাফিককে অস্বীকার করতে পারি না (সমস্ত কিছু এসএসএস ছাড়া)।

এটা কী ঠিক? আমি কি কিছু নিখোঁজ করছি (যেমন সত্য যে আমার কাছে পর্যাপ্ত র‌্যাম থাকলেও অদলবদলটি কোনওভাবেই খুব কার্যকর)? আমি কি এটি বন্ধ করব?


6
সুতরাং, সমস্ত উত্তর বিবৃতিতে সিদ্ধ হয় যে ১. আরও ভার্চুয়াল মেমরি কম চেয়ে শর্তাধীন আরও ভাল, এবং ২. কিছুটা অদলবদ সক্ষম থাকতে হবে কারণ এটি উভয়ই ভাল ভিত্তিতে নয় good
NekojiruSou

2
এটা ভ্রান্ত নয় যে অদলবদল কেবল 'রিজার্ভ' মেমরির জন্য meant অদলবদলকে অব্যবহৃত মেমোরি রাখার জায়গার জন্য বোঝানো হয়েছে (যাতে আপনি আপনার আসল স্মৃতিটি আরও দক্ষতার সাথে ব্যবহার করতে পারেন)। আপনার সবসময় অদলবদল করা উচিত। যদি আপনার স্মৃতিশক্তি না থেকে থাকে তবে আপনার স্মৃতিশক্তি - কাল out এটি ক্ষমতা পরিচালনার সমস্যা - অদলবদল করার প্রবণতা নয়। আমার পরিবর্তে একটি দীর্ঘ প্রতিক্রিয়া সার্ভারফল্ট.com/a/332205/75118 রয়েছে যা ভার্চুয়াল মেমরির উদ্দেশ্যগুলি আরও ভালভাবে ব্যাখ্যা করার চেষ্টা করে।
ম্যাথু ইফে

উত্তর:


27

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

তবে আমাকে একটি বাজে প্রশ্ন দিয়ে উত্তর দিন। যদি অর্থ কোনও সমস্যা না হয়ে থাকে এবং আপনার দুটি সিস্টেমের মধ্যে একটি পছন্দ রয়েছে - একটি র‌্যামের 12 জি এবং 4 জি অদলবদল, এবং অন্যটি 16 জি র‌্যাম এবং কোনও অদলবদল - আপনি কোনটি বেছে নেবেন? দুর্ভাগ্যবশত অধিকাংশ লোক এখনো যে তারা RAM এর 16G বেছে নিতে চাই উত্তর দিতে হবে এবং এখনও swap 'র, যা আমার পয়েন্ট হারিয়েছে এর 4 জি যোগ করুন।

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


14

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

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

আমি এই পৃষ্ঠাটি অদলবদলের বিষয়ে কথা বলেছি । তৃতীয় বিভাগটি দেখুন।

অদলবদল বন্ধ করার পরিবর্তে, আপনি swapiness নিয়ন্ত্রণ করতে পারেন ।


1
পরিস্থিতিতে আমি বর্ণনা করেছি এটি অদলবদল এবং র্যাম উভয়ই গ্রাস করবে এবং ক্রাশও হবে। এটি কয়েক মাস ধরে চলছে এবং এটি কখনও 30% এর বেশি মেমরি ব্যবহার করে না। সুতরাং এটি খুব সম্ভব না যে এটি স্বাভাবিক অপারেশনের সময় এত দ্রুত 100% এ চলে যাবে। সুতরাং যদি কোনও প্রক্রিয়া পাগল হয়ে যায় এবং 8 জিবি গ্রাস করে তবে এর অর্থ এটি ওএস যতটা মেমরি গ্রহণ করতে পারে তার অর্থ এটি সমস্তই means
পোমা

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

6

না, এটি একটি ভাল ধারণা নয়। 'কিছু প্রক্রিয়া পাগল হয়ে গেছে' এর অর্থ আপনার সক্রিয়ভাবে ইতিমধ্যে বলা উচিত ছিল

ulimit -d

প্রক্রিয়া তৈরির সময় বা তার আগে প্রক্রিয়া ডেটা বিভাগের মেমরির প্রতি সীমা নির্ধারণ করতে - এবং থ্রেডের সংখ্যার সীমাবদ্ধতা থাকতে পারে

ulimit -T

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

এটি এটিকে দেখুন: আপনার সিস্টেমে মোট মেমরিটি র‌্যাম + অদলবদল। আপনার যদি 12 গিগাবাইট অদলবদল থাকে, আপনি অদলবদল অক্ষম করে, কার্যকরভাবে সিস্টেম ভিএম ক্ষমতা অর্ধেকে কাটাবেন। খারাপ ধারণা। এটি কোনও বিতর্ক নয়, সত্যই এটি বছরের পর বছরগুলির খারাপ অভিজ্ঞতা থেকে অন্যান্য লোকেরা যা জানে তা কেবল পড়া reading আপনার বন্ধুর পাশাপাশি কিছু পাঠ করাও সম্ভব।


5

যেমনটি অন্যরা বলেছেন, আপনি "অদলবদল" প্যারামিটারের সাথে ঝাঁকুনির মাধ্যমে একেবারে প্রয়োজন ব্যতীত আপনার সার্ভারটিকে কার্যকরভাবে অদলবদল ব্যবহার বন্ধ করতে পারেন। এটি নিয়ন্ত্রণ করে যে কার্নেল কীভাবে আক্রমণাত্মকভাবে মেমরি পৃষ্ঠাগুলি সরিয়ে ফেলবে।

এটি বর্তমানে এটির সাথে কী সেট করা হয়েছে তা আপনি দেখতে পারেন:

cat /proc/sys/vm/swappiness

এবং আপনি এটিকে "লাইভ" সাথে (মূল হিসাবে) সম্পাদনা করতে পারেন:

# echo "10" > /proc/sys/vm/swappiness

এবং এটি অবিরত রাখতে, নিম্নলিখিতগুলিকে /etc/sysctl.conf এ যুক্ত করুন:

vm.swappiness=10

2

আর একটি ভাল জিনিস যা আপনি করতে পারেন তা হ'ল zRAM ব্যবহার করে র‌্যামে রূপান্তর করা। আমি মনে করি এটি একটি দুর্দান্ত ধারণা! পারফরম্যান্সের জন্য, একেবারে অদলবদল না করার মতো, যখন সিস্টেমটি খুব লোড হয় তখন ক্র্যাশগুলি প্রতিরোধ করে!

এটা দেখ:

http://www.webupd8.org/2011/10/increased-performance-in-linux-with.html

আমার অভিজ্ঞতা: এই মেশিনে যেখানে আমি এখন লিখছি, আমি অদলবদাকে অক্ষম করেছিলাম, কারণ আমার 4 জিবি র‌্যাম রয়েছে (2009 সালে এটি অনেকটা ছিল!)। আমি কেবল বেশ কয়েকটি সমস্যা অনুভব করেছি, এর মধ্যে একটি ভুল সময়ে একই সময়ে 127 টি ছবির মতো খুলছিল!

তবে .. এটি একটি ওয়ার্কস্টেশন এবং এটি ঝুলে থাকলে আমি পুনরায় বুট করতে পারি। কোনও সার্ভারে আমি মনে করি যে অদলবদল করা ভাল এবং সোয়াপ-ইন-র্যামটি আমার কাছে ভাল লাগছে।


1

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


0

ভালো বুদ্ধি নই. আপনি পৃথক অগ্রাধিকার সহ 2 টি সোয়াপ ফাইল সংজ্ঞায়িত করতে পারেন। প্রথমটি পূরণের ক্ষেত্রে ব্যবহার করা হয় এমন একটি ছোট এবং একটি বড়।

এছাড়াও vm.swappiness ডিস্কের অদলবদল কতটা আক্রমণাত্মকভাবে ঘটে তা নিয়ন্ত্রণ করতে আপনাকে সহায়তা করতে পারে।


0

যদি আপনি 0 থেকে vm.sWppiness ইনসেট করেন তবে এর অর্থ এই নয় যে সিস্টেমটি অদলবদল করবে না। আক্রমনাত্মক কার্নের প্রবণতাটি অদলবদল করতে হবে তা নির্ধারণ করার জন্য এটি একটি প্যারামিটার তবে এটি অদলবদল বন্ধ করে না।

আবার, অদলবদল খারাপ না তবে আঘাত করা হয়। সিস্টেস্টের ডেটা একবার দেখুন এবং এটিতে এটিতে বেশ ভাল পয়েন্টার দেওয়া উচিত।

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