הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   תחזוק שרתים ושירותי רשת נוספים (https://hosts.co.il/forums/forumdisplay.php?f=29)
-   -   כמה עצות בנושא שיפור ביצועים והגדרות (https://hosts.co.il/forums/showthread.php?t=81524)

RS324 07-03-10 02:27

כמה עצות בנושא שיפור ביצועים והגדרות
 
שנים שלא כתבתי פה בפורום |קורץ|

נחמד לחזור

בכל מקרה
יש לי שרת עם
1.7 GB memory
160 GB instance storage (150 GB plus 10 GB root partition)
32-bit platform

ומעבד יחיד רגיל.

ההגדרות שלי כרגע הם :

קוד:

Server Version: Apache/2.2.9 (Unix) DAV/2 PHP/5.2.6
Server Built: Jul 14 2008 15:29:50
Module Magic Number: 20051115:15

Timeouts: connection: 25    keep-alive: 25
MPM Name: Prefork
MPM Information: Max Daemons: 500 Threaded: no Forked: yes

קוד:

Timeout 25
KeepAlive On
MaxKeepAliveRequests 50
KeepAliveTimeout 3
<IfModule prefork.c>

 StartServers      5
  MinSpareServers    5
  MaxSpareServers    10
  ServerLimit        500
  MaxClients        500
  MaxRequestsPerChild  1000
</IfModule>

בהגדרות של ה MYSQL לא מוגדר כלום.

אשמח לקבל עצות לשיפור ה CONFIG גם של ה APACHE וגם של ה MYSQL
בנוסף אני אשמח לדעת , לקבל מידע על כלים לניטור עומסים \ למניעת עומסים \ לעשות ריסטארט לסרביסים באופן אוטומטי כשיש התרסקות

וכל מידע מועיל אחר בתחזוק של השרת.

השרת מיועד כרגע לשימושים פרטיים...

תודה.

yonatan 07-03-10 14:13

נראה לי קצת OVERKILL 500 ב prefork
מה הגדרת ב worker?
תרגיש חופשי להוריד את זה לפחות ... אתה סתם "מבזבז" זכרון.

לגבי MYSQL ... זה עולם ומלואו , אין קונפיג שמתאים לכל השרתים, הקונפיג צריך להיות בהתאמה למסדים שלך.
ספר מומלץ בנושא : http://www.amazon.com/gp/product/059...SIN=0596101716

בשביל לעשות ריסטרט לסרביסים במידה והם נופלים , תצטרך לכתוב \ למצוא איזה סקריפט שיתאים לשרת שלך.
אבל לעשות ריסטרט לסרביס כשהוא נופל זה לא הפתרון, הפתרון האמיתי זה למצוא למה הוא נופל, מה נופל לך?
כדאי מאוד להסתכל ב LOG של השרת ולחפש בעיות מכל סוג, טיפול מונע יכול להציל לפעמים מקריסה טוטאלית.

והמידע הכי הכי הכי מועיל שאני יכול לתת לך זה - לגבות לגבות לגבות ולגבות , אתה רץ על דיסק קשיח בודד ואפשר לומר ישן ( 160G ) , כמה עוד אתה חושב שהוא יוכל לסחוב?

תבדוק אותו
קוד:

smartctl --all /dev/sda
תסתכל שאין שגיאות
וגם תבדוק את הטמפרטורה של המערכת עם sensors, תראה שלא רותח שם משהו בטעות.

:-)
מקווה שזה מועיל טיפה.

Kernel 07-03-10 14:31

עוד עצה שימושית,

במידה ומדובר באתר יחיד,
להשמיש את האתר ל-Lighttpd/nginx יחד עם PHP CACHE ולחסוך במשאבים.

RS324 07-03-10 19:45

ציטוט:

נכתב במקור על ידי yonatan (פרסם 757720)
נראה לי קצת OVERKILL 500 ב prefork
מה הגדרת ב worker?
תרגיש חופשי להוריד את זה לפחות ... אתה סתם "מבזבז" זכרון.

לגבי MYSQL ... זה עולם ומלואו , אין קונפיג שמתאים לכל השרתים, הקונפיג צריך להיות בהתאמה למסדים שלך.
ספר מומלץ בנושא : http://www.amazon.com/gp/product/059...SIN=0596101716




בשביל לעשות ריסטרט לסרביסים במידה והם נופלים , תצטרך לכתוב \ למצוא איזה סקריפט שיתאים לשרת שלך.
אבל לעשות ריסטרט לסרביס כשהוא נופל זה לא הפתרון, הפתרון האמיתי זה למצוא למה הוא נופל, מה נופל לך?
כדאי מאוד להסתכל ב LOG של השרת ולחפש בעיות מכל סוג, טיפול מונע יכול להציל לפעמים מקריסה טוטאלית.

והמידע הכי הכי הכי מועיל שאני יכול לתת לך זה - לגבות לגבות לגבות ולגבות , אתה רץ על דיסק קשיח בודד ואפשר לומר ישן ( 160G ) , כמה עוד אתה חושב שהוא יוכל לסחוב?

תבדוק אותו
קוד:

smartctl --all /dev/sda
תסתכל שאין שגיאות
וגם תבדוק את הטמפרטורה של המערכת עם sensors, תראה שלא רותח שם משהו בטעות.

:-)
מקווה שזה מועיל טיפה.


טוב אז ככה :

<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>


לגבי ה PREFORK רציתי לדעת איך אתה מחשב את זה ומה זה אומר בעצם על הצריכה של הזיכרון הסבר קצת יותר מקיף על הקונפיגורציות יהיה מעולה.

הרעיון של הריסטארט לסרביס הוא פשוט
הסרביס נופל הסקריפט מאתחל אותו ושולח לי פרטים כי לא תמיד אני בזמינות מיידית ל SSH לאתחל דברים , וזה בכל מקרה מה שאני יעשה , המטרה היא DOWNTIME כמה שיותר נמוך את הלמה זה נופל אפשר לבדוק אחר כך , לא צריך שהאתר יהיה מושבת בגלל זה.

2. לגבי הגיבוי ..... זה דיי מסודר פחות או יותר

3. זה לא הארדדיסק ישן , זה VPS במקום מאד מאד רציני ככה שלגבי חומרה וטמפטרטות אני לא דואג , יש לי שרת בקונפיגורצייה דומה שרץ כבר יותר מ 300 ימים ללא נפילה אחת.

4. לגבי MYSQL התכוונתי לקונפיגורצייה בסיסית, לא לעשות התאמה מטורפת אלא יותר ברמת חלוקה של זיכרון בין ה APACHE ל MYSQL ברמה הבסיסית.


ציטוט:

נכתב במקור על ידי Kernel (פרסם 757722)
עוד עצה שימושית,

במידה ומדובר באתר יחיד,
להשמיש את האתר ל-Lighttpd/nginx יחד עם PHP CACHE ולחסוך במשאבים.

מותקן כרגע APC ו MEMCACHED
כל הקבצים הסטאטיים (תמונות ,CSS , JS) יושבים ב CDN חיצוני מסודר.


* מצאתי פעם איזה תוכנה שעושה את הריסטארטים ושולחת מייל משהו ממש ממש רציני
אני לא זוכר את השם של זה כרגע אבל כשאני אמצא אני יערוך

תודה לשניכם.

zoharesh 07-03-10 20:09

מה זה משנה מה מוגדר בworker אם הAPACHE שלו בכלל מקומפל עם MPM PREFORK?

yonatan 08-03-10 00:01

ציטוט:

נכתב במקור על ידי RS324 (פרסם 757761)
טוב אז ככה :

<IfModule worker.c>
StartServers 2
MaxClients 150
MinSpareThreads 25
MaxSpareThreads 75
ThreadsPerChild 25
MaxRequestsPerChild 0
</IfModule>


לגבי ה PREFORK רציתי לדעת איך אתה מחשב את זה ומה זה אומר בעצם על הצריכה של הזיכרון הסבר קצת יותר מקיף על הקונפיגורציות יהיה מעולה.

הרעיון של הריסטארט לסרביס הוא פשוט
הסרביס נופל הסקריפט מאתחל אותו ושולח לי פרטים כי לא תמיד אני בזמינות מיידית ל SSH לאתחל דברים , וזה בכל מקרה מה שאני יעשה , המטרה היא DOWNTIME כמה שיותר נמוך את הלמה זה נופל אפשר לבדוק אחר כך , לא צריך שהאתר יהיה מושבת בגלל זה.

2. לגבי הגיבוי ..... זה דיי מסודר פחות או יותר

3. זה לא הארדדיסק ישן , זה VPS במקום מאד מאד רציני ככה שלגבי חומרה וטמפטרטות אני לא דואג , יש לי שרת בקונפיגורצייה דומה שרץ כבר יותר מ 300 ימים ללא נפילה אחת.

4. לגבי MYSQL התכוונתי לקונפיגורצייה בסיסית, לא לעשות התאמה מטורפת אלא יותר ברמת חלוקה של זיכרון בין ה APACHE ל MYSQL ברמה הבסיסית.




מותקן כרגע APC ו MEMCACHED
כל הקבצים הסטאטיים (תמונות ,CSS , JS) יושבים ב CDN חיצוני מסודר.


* מצאתי פעם איזה תוכנה שעושה את הריסטארטים ושולחת מייל משהו ממש ממש רציני
אני לא זוכר את השם של זה כרגע אבל כשאני אמצא אני יערוך

תודה לשניכם.

תנסה לעבוד עם worker יתן לך ביצועים יותר טובים, תשאיר את ההגדרות כמו שהן ככה ותעלה בהדרגה.

לגבי השאלות שלך , אין one size fits all , ככה שזה כל מקרה לגופו....

RS324 08-03-10 09:45

איך אני מחליף את PREFORK ב WORKER ?
FEDORA 8

yonatan 08-03-10 13:36

ציטוט:

נכתב במקור על ידי RS324 (פרסם 757790)
איך אני מחליף את PREFORK ב WORKER ?
FEDORA 8

fedora 8 = eol

אתה צריך לקמפל מחדש.

zoharesh 12-03-10 21:40

בקונפיג תוסיף פשוט --with-mpm=worker
(לדעתי זה יצא קצת הפוך פה)

ובקונפיג התכוונתי לקובץ configure לפני שעושים make וmake install


כל הזמנים הם GMT +2. הזמן כעת הוא 08:24.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ