ملتقى قبيلة حرب الرسمي

ملتقى قبيلة حرب الرسمي (http://www.m-harb.net/vb/index.php)
-   ملتقى برامج الكمبيوتر (http://www.m-harb.net/vb/forumdisplay.php?f=5)
-   -   [درس] CPU Usage Limiter for Linux (http://www.m-harb.net/vb/showthread.php?t=53230)

فهد ابن غانم 25-10-09 06:15 AM

[درس] CPU Usage Limiter for Linux
 
بسم الله الرحمن الرحيم و عليه توكلنا و به نستعين


بداية كدة لازم نفهم اي هو ال CPU Usage Limiter

هو التحكم التام في استهلاك الموارد للسيرفر

بمعنى

عندك سيرفر استضافة و عليه مواقع كتير و عاوز تحدد استخدام كل موقع مثلا 3% من موارد الخادم

اولا لازم نعرف لزمتها ايه عشان في ناس بتحب تفهم


مثلا لو عندك موقع مستهدف او بيعمل نشرات بريدية او او او مستهلك موارد سيرفرك

لو انت مدير سيرفر و السيرفر وقف منك بسبب موقع من المواقع اعزرني فأنت فاشل

متبصليش كدة ايوة هتبقى فاشل

مثلا صاحب موقع بيعمل سبام

لو انت مش محددله موارد او قيمة موقعة مايستهلكش اكتر منها هتلاقي سيرفرك وقف في لحظات

طيب احنا كدة فهمنا فايدة الدرس و اهميتة بالنسبه لأي صاحب سيرفر

نيجي بئه للدرس

طبعا الدرس دة بالفعل مش هتلاقيه غير هنا و اتحدى اي كائن فضائي او حتى ارضي يجيبلي حتة منه
و عشان كدة لو عاوز تنقله انقله مع ذكر حقوق الدعم العربي


بسم الله نتوكل على الله

قوم اغسل ايدك كدة و اعمل كوبايه شاي و تعالى اقعد و فك ودانك و ركز كويس جدا

بئذن الله هناخد منهج جميل اوي في شروحتنا

المنهج دة ان الواحد مينفعش يطبق شئ و هو مش فاهمة و عشان كدة هنعرض الشرح بأكتر من صورة

توكلنا على الله
---------------------------------------------------------------------------------
اول شئ نحدد الموقع اللي عاوزين نحددله نسبه من استخدام الموارد


ولازم نعرف ان القصة دي ليها اكتر من طريقة

الأولى
هي للمحترفين


اما الثانيه هي برنامج و ليه موقع رسمي و حجات كدة

الطريقة الأولى

ندخل الشيل و محدش يقول يعني ايه شيل :nosweat:

كود PHP:

 pico  /etc/security/limits.conf 



ثم

كود PHP:

user type item value 


الاول تعرف ايه الحاجه

اليوزر : بتكتب تحته اليوزر اللى انت عايزه ولو عايز الكلام يطبق على كله تكتب *

النوع التاني Hard وده لو اليوزر وصل له هيوقف اليوزر
type : ده النوع واحد اسمه soft وده بيعلم زي تحذير لليوزر لما يوصل لللحد الموجود

Item : ودي الحاجه اللى انت عايز تعملها تجديد

مثلا

عدد العمليات اللى يقدر يقوم بيها اليوزر

وحاجات كتير دي تفاصيلها
كود:

* core - limits the core file size (KB)
كود:


  * data - max data size (KB)
  * fsize - maximum filesize (KB)
  * memlock - max locked-in-memory address space (KB)
  * nofile - max number of open files
  * rss - max resident set size (KB)
  * stack - max stack size (KB)
  * cpu - max CPU time (MIN)
  * nproc - max number of processes
  * as - address space limit
  * maxlogins - max number of logins for this user
  * maxsyslogins - max number of logins on the system
  * priority - the priority to run user process with
  * locks - max number of file locks the user can hold
  * sigpending - max number of pending signals
  * msgqueue - max memory used by POSIX message queues (bytes)
  * nice - max nice priority allowed to raise to
  * rtprio - max realtime priority
  * chroot - change root to directory (Debian-specific)


ده مثال لو عايز كل يوزر ميقدرش يفتح اكتر من 100 عمليه فى الوقت الواحد وده كويس


كود:

* hard nproc 100
عندك برضو لو عايز تحدده رقم معين من الرامات

كود:

* hard memlock  1024
دي هتحدد لكل يوزر انه يقدر يستخدم ميجا واحده من الرامات والارقام بالكليو بايت
كود:

* soft cpu  5
دي تسمح لكل يوزر بانه يستخدم من وقت المعالج 5 دقائق لانجار عمليات اليوزر


طبعا عندك حاجه اسمها PAM

انتهي الجزء الخاص بالمحترفين ,,

,, يتبع ,,



فهد ابن غانم 25-10-09 06:16 AM

الجزء التاني ,,


الجزء دة طبعا هنستخدم فيه اداة ممكن اي حد مننا يستخدمها + متطورة عن الشرح السابق و اسهل كمان و الاجمل ليها موقع رسمي



اكيد في ناس تقدر تطبق الشرح من الموقع ونا كمان هشرحة هنا

نفتح الشيل و نستعيذ بالله من الشيطان الرجيم

الزق الامر دة في الشيل و متسئلش ليه

كود:

svn checkout https://cpulimit.svn.sourceforge.net/svnroot/cpulimit/trunk cpulimit
طبعا لازم نفك الضغط

كود:

tar zxf cpulimit-xxx.tar.gz

ناخد تاكسي و نروح على الفولدر ( محدش يدي للتاكسي اكتر من جنيه واحد)

كود:

cd cpulimit-xxx

ثم

كود:

make

و مبروك تم التركيب بنجاح

نيجي بئه لأمثلة الأستخدام

هنفترض ان في يوزر باسم
كود:

support-ar

و اليوزر دة ما شاء الله عليه واخد السيرفر لحسابة و لازم نوقفه عند حدة .<< بيحلم دة ال يوقفه ال :bye1:


كود:

cpulimit --exe support-ar --limit 40
كود:


cpulimit --exe /usr/local/bin/support-ar --limit 40


طبعا واضح جدا من الأمر السابق ان اليوزر اتحددله 40% من استهلاك الموارد

و لو عندك ادمن شات مثلا او سيرفر راديو او اي برنامج على السيررفر زي الاباتشي و الماي سيكول و الشغل دة
ما عليك الا انك تجيب الرقم بتاع العمليه و دة طبعا ممكن تجيبه من خلال

كود:

Main >> System Health >> Show Current CPU Usage

ولنفترض ان البروسيس دة رقمة 2960

كود:

cpulimit --pid 2960 --limit 55

نحددله الكميه اللي يستهلكها من ال CPU و انتهي الدرس كدة

ان عجبك الشرح لا تنسى ++

انتهي



و الله ولي التوفيق ..,,




علي العلوي 25-10-09 07:45 AM

أشكرك عزيزي فهد الغنامي

جعله في ميزان حسناتك

بارك الله فيك وتقبل مروري

مع شكري وتقديري لك يامميز
__________________

ابوفواز النويمي 10-11-09 06:48 PM

جزاك الله خير على الموضوع
وبارك الله فيك



الساعة الآن 06:03 PM

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Designed & TranZ By Almuhajir

Ads Management Version 3.0.1 by Saeed Al-Atwi