דף הבית / בניית אתרים / פרוטוקול HTTP/2: מה זה בכלל? יתרונות, הטמעה ועוד

פרוטוקול HTTP/2: מה זה בכלל? יתרונות, הטמעה ועוד

במאמר היום נבחן את הפרוטוקול החדש, HTTP/2 והמשמעות שלו מבחינתנו כבעלי או מקדמי אתרים. זהו פרוטוקול די מהפכני מבחינת היכולות, הוא הושק ב2015, ובהתחשב בכך שהוא החליף פרוטוקל מ1999 – הוא נחשב גם לצעיר מאד.

מדריך HTTP/2

במאמר הבא:

  • ננסה להבין מהו HTTP/2 (דגש על ננסה, אני בקושי הצלחתי)
  • מה הוא בא להחליף
  • מהם יתרונותיו
  • מהן המשמעויות לגבינו
  • כיצד עובדים עם HTTP/2

* והערה קטנה לפני החפירה – המאמר הזה טכני נורא, גם אני לא מבין חצי מהמילים שכתבתי כאן, אבל היי – אולי חסכתי לכם קצת מאמץ 🙂

מה כל כך נורא ב-HTTP או HTTP1.1?

HTTP, ראשי תיבות של Hypertext Transfer Protocol – הוא הפרוטוקול באמצעותו הדפדפן מתקשר עם השרת בשביל להעביר את כל המידע שדרוש לשם הצגת דף מסוים.

זה בעצם התהליך של טעינת הדף. כאשר מדברים על 'זמן טעינה', מדברים על תהליך שבנוי משלושה שלבים:

  • שליחת בקשה מהמחשב לשרת לקבלת קובץ
  • אתחול חיבור ה-TCP (Transmission Control Protocol)
  • הורדת הקובץ

כאשר הוצג פרוטוקול הHTTP-, אתרי האינטרנט היו מאד פשוטים והכילו מעט אלמנטים. גם מהירות החיבור היתה איטית יותר כאשר מודמים DIAL-UP היו בערך פי 100 יותר איטיים.

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

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

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

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

  • התיאור הזה מאד פשטני כי כן היו נסיונות שצלחו לפתור את הבעיה, בעיקר על ידי פתיחת שתי התקשרויות שונות במקביל ואז ארבעה ואפילו שישה. בעיקרון, זו הבעיה שHTTP/2- פותר בצורה די יפה, מיד נראה כיצד.
  • שימו לב שלא כתבתי מילה על זמני ההורדה עצמם של האלמנטים השונים מפני שכיום זהו נתון זניח.

איך HTTP/2 עושה את הדברים יותר טוב

ישנם מספר שינויים עקרוניים לפרוטוקול החדש:

  • מולטיפלקסינג (MULTIPLEXING) או "ריבוב" בעברית – זהו החידוש הגדול והחשוב (וגם זה עם השם היותר מפוצץ). מולטיפלקסינג זו היכולת של השרת והקליינט (באמצעות הדפדפן) להשתמש רק בחיבור TCP אחד בשביל להעביר מספר אלמנטים.
    האלמנטים השונים: תמונות, קבצי CSS -JavaScript למשל, מועברים ביחד בחיבור אחד. זה מצמצם את העיכובים הקטנים והרבים שנגרמים בHTTP1.
  • תעדוף ותלות (Dependency, Prioritization) – בפרוטוקול החדש יש יכולת לתת תעדוף של משאבים שונים על פני אחרים, על מנת לייעל את תהליך זרימת הנתונים.
  • דחיפת קבצים על ידי השרת (Server Push) – הפרוטוקול החדש מאפשר לשרת "לדחוף" קבצים למטמון הדפדפן עוד לפני הבקשה עצמה – חיסכון וייעול של זמן.

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

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

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

רוצה לקבל הצעה לקידום אתר? כמה פרטים ואחזור אליך בהקדם

יש?

הוידאו הזה מסביר את הדברים בצורה די טובה:

כיצד מיישמים HTTP/2?

להלן תהליך הישום של הפרוטוקול החדש:

  1. לפני ההטמעה של HTTP/2, נצטרך לוודא שאנחנו עובדים עם אתר מאובטח. הרוב המוחלט של הדפדפנים לא יעדו עם HTTP/2 אם האתר לא עובר דרך HTTPS. מה שיקרה זה שהם יעברו אוטומטית לפרוטוקול הקודם HTTP 1.1.
    סיבה נוספת לעבור לאתר מאובטח בכל הדפים היא כמובן גוגל וקידום אתרים. גוגל מתעדף אתרים מאובטחים וכיום זו ממש דרישה אלמנטרית מכל אתר.
  2. כצעד ראשון, ניתן להעביר רק את הנכסים הסטטיים לHTTP/2-. מדובר בעיקר על תמונות. זה כבר ישפר את מהירות הטעינה.
  3. ביצוע מעבר אל HTTP/2בשרת. זו פעולה שניתן לעשות לבד או להיעזר בספק השרות שלכם. Nginx וApache תומכות בHTTP/2 מגרסאות 1.9.5 ו 2.4.17 בהתאמה.
  4. לבדוק שהכל עובד. ממש כמו כל עדכון, אתם רוצים לוודא שהוא עבר בשלום ולבחון את השיפורים.
  5. ישנן שתי טכניקות נפוצות בהן השתמשו בכדי ליעיל את התהליך בשימוש עם הפרוטוקול הישן HTTP 1.1.
    אחת מהן היא Spriting – זה בעצם ההפיכה של מספר תמונות קטנות לתמונה גדולה, שליחתה ופירוקה על ידי הדפדפן.
    השיטה השניה היא שרשור קבצים אחד עם השני Concatenation – זה שילוב של קבצים שונים שמשורשרים לזרם אחד של מידע בכד לחסוך פתיחת התקשרויות TCP. ברגע שעוברים לHTTP/2, אין יותר צורך להשתמש בטכניקות הללו ועדיף להסיר אותן משימוש.
  6. לגבי אתרי WordPress – זה מאד פשוט, האתר צריך להיות מאוחסן על שרתים שתומכים בHTTP/2-. יש לשים לב להתניה שעדיין קיימת לאתר מאובטח. אם הוא איננו מאובטח – ההתקשרות תתבצע בסופו של דבר דרך HTTP1 מהסיבות שציינו.

סיכום

הפרוטוקול הצעיר HTTP/2 נהיה יותר ויותר נפוץ. לפי הערכות שונות כבר יותר מ- 25% מהתנועה באינטרנט עוברת באמצעותו ויותר מ75% מהדפדפנים תומכים בו. הפרוטוקול יכול להוריד בכ-50% את זמן הטעינה של האתר. ככל שהאתר עמוס ביותר אלמנטים וקבצים שונים, כך השיפור יהיה גדול יותר.

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

בהקשר זה ממליץ לקרוא גם את המדריך שכתבתי על אבטחת אתרים.

בהצלחה 🙂


היו חברתיים!

אהבתם? במידה ותירצו לקבל ממני עדכונים עתידיים ישירות לפיד שלכם אתם מוזמנים לעשות לי לייק בפייסבוק או לעקוב אחריי בגוגל+. נשתמע!

רוצה שאבדוק לך את האתר (בחינם לגמרי!) ואתן לך הערכת מחיר לקידום? כמה פרטים ואחזור אליך

רוצים להגיב?

תגובות

אודות דניאל

עוסק בשיווק באינטרנט (בדגש על SEO) באופן מקצועי משנת 2009. יזם אינטרנט ובלוגר בזמן המועט שנשאר לי. פה ושם מעביר הרצאות וגם מלמד קידום אתרים בשיעורים פרטיים וסדנאות. נשוי + ילדה מהממת וגר בנס ציונה :-)

שווה לקרוא גם את

מחקר מילות מפתח

מחקר מילות מפתח: למה זה קריטי + 7 כלים למחקר מילים

מחקר מילות מפתח הוא אחד הדברים הבסיסיים ביותר שמבצעים בקמפיין של קידום אתרים – גם ...

אלמנטור

אלמנטור: ה-Page Builder המוביל בעולם לאתרי וורדפרס

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

3 תגובות

  1. simcha123456@gmail.com'

    בפועל איך מעבירים את האתר ל HTTP/2
    אני משתמש בsiteground

    תודה רבה על המאמר

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *

יצירת קשר זריזה
close slider