פרסומת
הרשתות החברתיות היא אומנות החיבור לאנשים החולקים אינטרסים משותפים. ה"עבודה "שלך היא קהילה שעוזרת לשמור על התאחדותך עם אחרים ומציעה יתרונות רבים. רשת דרך אתרי מדיה חברתית חוללה מהפכה באופן שבו אנו משתמשים באינטרנט והיא נמצאת בחזית מה שאנו מכנים כיום Web 2.0.
פייסבוק הוא רשת חברתית. אנשים כבר "מפרסמים" אחד את השני זה בערך 6 שנים פייסבוק הרשת החברתית המשומשת ביותר עם יותר מ -350 מיליון משתמשים ברחבי העולם. אבל איך פייסבוק עובדת?
במאמר זה אדון בפעילותה הפנימית של פייסבוק, בכיסוי שלה ארכיטקטורה ותשתית חזיתית / אחורית "" האומים והברגים שמחזיקים את פייסבוק יחד.
איך פייסבוק עובדת? "" הקצה הקדמי
פייסבוק משתמשת במגוון שירותים, כלים ושפות תכנות כדי להרכיב את תשתית הליבה שלה. בקצה הקדמי, השרתים שלהם מריצים ערימת LAMP (Linux, Apache, MySQL ו- PHP) עם Memcache. לא מומחה למדעי המחשב? הבה נבחן בדיוק מה זה אומר.
לינוקס ואפצ'י

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

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

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

זיכרון זכרון היא מערכת במטמון זיכרון המשמשת לזרז אתרי אינטרנט דינמיים המונעים על בסיס נתונים (כמו פייסבוק) על ידי מטמון נתונים ואובייקטים ב- RAM כדי להפחית את זמן הקריאה. Memcache הוא צורת המטמון העיקרית של פייסבוק ועוזרת להקל על עומס בסיס הנתונים.
הפעלת מערכת מטמון מאפשרת לפייסבוק להיות מהירה ככל שהיא נזכרת בנתונים שלך. אם הוא לא צריך לעבור למסד הנתונים הוא פשוט יביא את הנתונים מהמטמון על סמך זיהוי המשתמש שלך.
חסרונות לשימוש ב- LAMP
פייסבוק הבינה שיש חסרונות בשימוש בערימת ה- LAMP. יש לציין כי PHP אינו בהכרח ממוטב עבור אתרים גדולים ולכן קשה לקנה מידה. כמו כן, זו אינה שפת הביצוע המהירה ביותר ומסגרת ההרחבה קשה לשימוש.

מייק שרופפר, סגן נשיא ההנדסה בפייסבוק, ערך לאחרונה ראיון ב- EmTech @ MIT לגבי זה. "קנה מידה של אתר כלשהו הוא אתגר", אמר גרופפר, "אך לקנה מידה של רשת חברתית יש אתגרים ייחודיים."
הוא המשיך ואמר שבניגוד לאתרים אחרים, אתה לא יכול פשוט להוסיף שרתים נוספים כדי לפתור את הבעיה מכיוון של "מערך הנתונים העצום המחובר לחיבור זה של פייסבוק". חיבורים חדשים נוצרים כל הזמן עקב פעילות המשתמשים.
פייסבוק צמחה כל כך מהר שלעתים קרובות הם מתמודדים עם סוגיות הקשורות לשאילתות בסיס נתונים, מטמון ואחסון נתונים. בסיס הנתונים שלהם עצום מורכב ברובו. כדי להסביר זאת, פייסבוק החלה הרבה פרויקטים של קוד פתוח ושירותי backend.
איך פייסבוק עובדת? "" הקצה האחורי
שירותי ה- Backend של פייסבוק נכתבים במגוון שפות תכנות שונות כולל C ++, Java, Python ו- Erlang. הפילוסופיה שלהם ליצירת שירותים היא כדלקמן:
1. צור שירות במידת צורך
2. צור מסגרת / ערכת כלים ליצירת שירותים קלה יותר
3. השתמש בשפת התכנות הנכונה למשימה
כאן תוכל למצוא רשימה של כל פיתוחי הקוד הפתוח של פייסבוק. אדון בכמה מהכלים החיוניים שפייסבוק פיתחה.
חסכון (פרוטוקול)
חסכון היא מסגרת שיחה להליך מרחוק קל משקל לפיתוח שירותי שפה חוצה מדרגיות. חסכון תומך ב- C ++, PHP, Python, Perl, Java, Ruby, Erlang ואחרים. זה מהיר, חוסך זמן פיתוח ומספק חלוקת עבודה בעבודה על שרתים ויישומים בעלי ביצועים גבוהים.
כתוב (שרת יומן)
כתוב הוא שרת לצבירת נתוני יומן המוזרמים בזמן אמת משרתים רבים אחרים. זוהי מסגרת ניתנת להרחבה שימושי לרישום מערך נתונים רחב. הוא בנוי על גבי חסכון.
קסנדרה (בסיס נתונים)

קסנדרה היא מערכת ניהול מסד נתונים המיועדת להתמודד עם כמויות גדולות של נתונים הפרוסים על פני שרתים רבים. זה מכיל את התכונה של חיפוש תיבת הדואר הנכנס של פייסבוק ומספק חנות בעלת ערך מובנה עם עקביות.
HipHop עבור PHP
HipHop עבור PHP הוא שנאי קוד מקור עבור קוד סקריפט PHP ונוצר כדי לחסוך משאבי שרת. HipHop הופך את קוד המקור של PHP ל- C ++ אופטימיזציה. לאחר ביצוע זה, הוא משתמש ב- g ++ כדי להרכיב אותו לקוד המכונה.
סיכום
על קצה המזלג, זה הפייסבוק. מאמר זה יכול בקלות להיות באורך של 37 עמודים אם הייתי הולך לפרטי פרטים, אבל כדי לענות על השאלה "איך עובד פייסבוק?" אני חושב שזה יספיק. אם אתה מסתכל על פני כל התכונות והחידושים, הרעיון המרכזי מאחורי פייסבוק הוא באמת בסיסי מאוד "" שמירה על אנשים מחוברים. פייסבוק מבינה את כוחה של הרשתות החברתיות והיא מחדשת כל העת בכדי לשמור על השירות שלהם בצורה הטובה ביותר בעסק.
האם מצאת מאמר זה מועיל? השאר את המחשבות, ההערות והרעיונות שלך למטה!
סטיב, מנהל קהילה ב- VaynerMedia, נלהב ממדיה חברתית ובניית מותג.