טיפים לבעלי "אתרים ביתיים"

ב־יום שני, 2 ביוני 2008, מאת ארתיום; פורסם תחת: אינטרנט, לינוקס, תכנה ומחשבים, WordPress בעברית; ‏3 תגובות

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

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

דחיסת gzip

זה הדבר הראשון שצריך לבצע עבור אתר האינטרנט. למשל, העמוד הראשי של הבלוג הזה, הוא בגדול של כ־15K, בחיבור אינטרנט ממוצע שניתן ע"י הספקיות אופייניות, ייקח כשנייה להוריד את העמוד, בהנחה, שאין מבקר אחר שגולש באתר מקביל.

אבל 15K זה גודל דף HTML נקי. רוב הלקוחות (דפדפנים) יודעים לקרוא אותם גם כשהוא דחוס בעזרת ספרית zlib. אם דוחסים את הדף בעזרת gzip מקבלים קובץ בגודל של כ־4.5K -- פחות משליש מהדף המקורי.

ניתן להפעיל דחיסה בצורה מאוד פשוטה:

שרת Apache2 בא עם mod_deflate, שיודע לעשות את העבודה באופן שקוף למערכת. ניתן להפעיל אותו, בדביאן, ע"י a2enmod deflate.

לעומתו, שרת lighttpd (גרסאות 1.4‎.x) לא תומך בזה. אבל ניתן לבצע את הפעולה ברמת PHP (כמובן אם מערכת התוכן שלכם מבוססת עליה). בדביאן ניתן לערוך קובץ ‎/etc/php/cgi/php.ini והגדיר שורה:

 zlib.output_compression = On

זה יעשה את העבודה באותה מידה כמו mod_deflate של Apache2 עושה.

העומדים צריכים לעשות דיאטה.

בנוסף לדחיסת gzip כדאי גם לעשות דיאטה לעמודי האתר. מה הכוונה?

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

אני אביא דוגמה כיצד אפשר לשפר את המצב ב־WordPress. אותן השיטות תקפות גם במערכות תוכן אחרות.

  1. אל תהססו להשתמש בתג more על מנת לחתוך תקצירים מהמאמרים שיוצגו העמוד הראשון -- אין שום סיבה להציג באותו עמוד מספר מאמרים מלאים. מי שירצה לקרוא ייכנס לעמוד הספציפי ויקרא.
  2. תקטינו את מספר המאמרים המוצגים בעמוד השער: "האם באמת צריך להציג 10 מאמרים?" תקטינו את המספר ל־5.
  3. וודאו כי ערכת הנושא שאתם משתמשים בה היא רזה מספיק: מעט תמונות, הרבה css. תורידו כל מיני שטויות שאתם לא משתמשים בהם. פחות תמונות, עמודים יותר נקיים ומשתמשים נהנים. הנה לדוגמה, ערכת נושא לא עמוסה ונקיה של הבלוג שלי באנגלית. לעומת זאת האתר הזה עומס בצורה נוראית ללא הצדקה (סליחה שלומי, אבל זה מה שאני חושב).

הסרת כל תכנות שיתוף קבצים

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

מי שעדיין רוצה להפעיל אותן, כדאי שילמד על מה זה Traffic Shapers. אני אתוודה, ניסיתי להבין כיצד מגדירים אותם... לא הצלחתי, כך שמי שירצה, דרך־צלחה.

הגדלת רוחב הפס

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

למעשה, השרת הזה נהנה מרוחב הפס של 1.5M/500K במחיר מאוד סביר.

סיכום

  1. תפעילו דחיסת gzip
  2. תעשו דיאטה לעמודים
  3. אל תשתמשו בתכנות שיתוף קבצים
  4. יש עדיפות מסוימת לכבלים

ובעיקר, תוודאו שהאתר שלכם מגיב כראוי, אחרת, אנשים לא ייכנסו אלו.

קריאה נוספת:

תגובות

תומר, ב־03/06/08 01:10

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

ארתיום, ב־03/06/08 06:56

כן, אם מדובר בתמונות (גדולות) או קבצים להורדה.

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

בנוסף, אם כבר יש לך אחסון, כדאי להעלות את האתר לשם.

משה, ב־06/06/08 15:57

מעניין. האמת שאת רוב הפיתרונות הכרתי - אבל נחמד מאוד לקרוא אותם מסודרים ברשימה

במקרה שלי זה היה בהתאמה לשינויים הנדרשים עבור שרתי IIS.

הוסף תגובה:

 
 כתובת דוא"ל לא תוצג
 

ניתן לכתוב תגובות עם שימוש בתחביר Markdown.

חובה לאפשר JavaScript כדי להגיב.

דפים

נושאים