লিনাক্সে রu্যাম মেমরি ক্যাশে, বাফার এবং অদলবদল স্পেস কীভাবে সাফ করবেন


অন্য যে কোনও অপারেটিং সিস্টেমের মতো, জিএনইউ/লিনাক্স দক্ষতার সাথে এবং তার চেয়েও বেশি কিছু মেমরি পরিচালনা প্রয়োগ করেছে। তবে যদি কোনও প্রক্রিয়া আপনার স্মৃতি হারিয়ে ফেলে এবং আপনি এটি সাফ করতে চান, লিনাক্স রাম ক্যাশে ফ্লাশ বা সাফ করার জন্য একটি উপায় সরবরাহ করে।

প্রতিটি লিনাক্স সিস্টেমের কোনও প্রক্রিয়া বা পরিষেবাদি ব্যাহত না করে ক্যাশে সাফ করার জন্য তিনটি বিকল্প রয়েছে।

1. শুধুমাত্র পেজ ক্যাশে সাফ করুন।

# sync; echo 1 > /proc/sys/vm/drop_caches

2. ডেন্ট্রি এবং আইনেরগুলি সাফ করুন।

# sync; echo 2 > /proc/sys/vm/drop_caches

৩. পেজক্যাচ, ডেন্ট্রি এবং ইনোড সাফ করুন।

# sync; echo 3 > /proc/sys/vm/drop_caches 

উপরের কমান্ডের ব্যাখ্যা।

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

যদি আপনাকে ডিস্ক ক্যাশে সাফ করতে হয় তবে প্রথম কমান্ডটি "... প্রতিধ্বনি 1>…।" হিসাবে এন্টারপ্রাইজ এবং উত্পাদনে নিরাপদ is > কেবলমাত্র পেজ ক্যাশে সাফ করবে। উত্পাদনে "... প্রতিধ্বনি 3>" এর উপরে তৃতীয় বিকল্পটি ব্যবহার করার পরামর্শ দেওয়া হয় না যতক্ষণ না আপনি জানেন যে আপনি কী করছেন, কারণ এটি পেজ ক্যাশে, ডেন্ট্রি এবং ইনোড সাফ করবে।

আপনি যখন বিভিন্ন সেটিংস প্রয়োগ করছেন এবং যাচাই করতে চান, যদি এটি আসলে I/O- বিস্তৃত বেঞ্চমার্কে বিশেষভাবে প্রয়োগ করা হয়, তবে আপনাকে বাফার ক্যাশে সাফ করার প্রয়োজন হতে পারে। সিস্টেমটি রিবুট না করে উপরে বর্ণিত হিসাবে আপনি ক্যাশে ফেলে দিতে পারেন, কোনও ডাউনটাইম প্রয়োজন নেই।

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

এছাড়াও এটি ক্যাশে পরিষ্কার করার সময় এবং কয়েক মিনিটের জন্য সিস্টেমকে ধীর করবে এবং ওএসের প্রয়োজনীয় প্রতিটি সংস্থান আবার ডিস্ক-ক্যাশে লোড হবে is

এখন আমরা ক্রোন শিডিয়ুলার টাস্কের মাধ্যমে প্রতিদিন সকাল 2 টায় র্যাম ক্যাশে স্বয়ংক্রিয়ভাবে সাফ করার জন্য একটি শেল স্ক্রিপ্ট তৈরি করব। শেল স্ক্রিপ্ট ক্লিয়ারচ্যাশ তৈরি করুন এবং নিম্নলিখিত লাইনগুলি যুক্ত করুন।

#!/bin/bash
# Note, we are using "echo 3", but it is not recommended in production instead use "echo 1"
echo "echo 3 > /proc/sys/vm/drop_caches"

Clearcache.sh ফাইলটিতে নির্বাহের অনুমতি সেট করুন।

# chmod 755 clearcache.sh

আপনি যখনই রাম ক্যাশে সাফ করার প্রয়োজন তখন আপনি স্ক্রিপ্টটি কল করতে পারেন।

প্রতিদিন সকাল 2 টায় রu্যাম ক্যাশে সাফ করার জন্য একটি ক্রোন সেট করুন। সম্পাদনার জন্য ক্রোনটব খুলুন।

# crontab -e

নীচের লাইনটি যুক্ত করুন, সংরক্ষণ করুন এবং প্রতিদিন সকাল 2 টায় চালাতে প্রস্থান করুন।

0  2  *  *  *  /path/to/clearcache.sh

কোনও ক্রোন কীভাবে করবেন সে সম্পর্কে আরও তথ্যের জন্য আপনি 11 ক্রোন শিডিউলিং কাজগুলিতে আমাদের নিবন্ধটি চেক করতে পছন্দ করতে পারেন।

না! এইটা না. এমন পরিস্থিতিটির কথা চিন্তা করুন যখন আপনি প্রতিদিন সকাল 2 টায় র্যাম ক্যাশে সাফ করার জন্য স্ক্রিপ্টটি নির্ধারণ করেন। প্রতিদিন সকাল 2 টায় স্ক্রিপ্টটি কার্যকর করা হয় এবং এটি আপনার রu্যাম ক্যাশে ফ্লাশ করে। যে কোনও কারণে, আপনার ওয়েবসাইটে প্রত্যাশিত ব্যবহারকারীরা অনলাইনে থাকা এবং আপনার সার্ভারের কাছ থেকে সংস্থান চাওয়ার চেয়ে বেশি হতে পারে।

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

আপনি যদি অদলবদল সাফ করতে চান, আপনি নীচের কমান্ডটি চালাতে পছন্দ করতে পারেন।

# swapoff -a && swapon -a

সমস্ত সম্পর্কিত ঝুঁকি বোঝার পরে আপনি উপরের ক্রোন স্ক্রিপ্টে উপরের কমান্ডটি যুক্ত করতে পারেন।

এখন আমরা উপরের দুটি কমান্ডকে একক কমান্ডের সাথে একত্রে রu্যাম ক্যাশে এবং অদলবদল স্পেস সাফ করার জন্য একটি সঠিক স্ক্রিপ্ট তৈরি করব।

# echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'

OR

$ su -c "echo 3 >'/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared'" root

উপরের দুটি কমান্ড পরীক্ষা করার পরে, আমরা স্ক্রিপ্টটি চালানোর আগে এবং পরে "free -h" কমান্ড চালাব এবং ক্যাশে পরীক্ষা করব।

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