Реклама
Друштвено умрежавање је вештина повезивања с онима који имају заједничке интересе. Ваша „мрежа“ је заједница која вам помаже да останете уједињени са другима и нуди многе предности. Умрежавање путем веб локација друштвених медија револуционирало је начин на који користимо интернет и предњачи у ономе што данас називамо Веб 2.0.
Фејсбук је социјална мрежа. Људи се „фејсбукнују“ једни друге већ око 6 година, правећи се Фејсбук најкоришћенија друштвена мрежа са преко 350 милиона корисника широм света. Али како функционише Фацебоок?
У овом чланку ћу говорити о унутрашњем раду Фацебоока, који покрива његов рад архитектура и фронтенд / бацккенд инфраструктуре ”” матице и вијке који држе Фацебоок заједно.
Како функционише Фацебоок? "" Предњи крај
Фацебоок користи разне услуге, алате и програмске језике за састављање своје основне инфраструктуре. На предњем крају њихови сервери покрећу ЛАМП (Линук, Апацхе, МиСКЛ и ПХП) низ са Мемцацхе-ом. Ниси стручњак за информатику? Погледајмо тачно шта то значи.
Линук и Апацхе

Овај део је прилично разумљив. Линук је језгро рачунарског оперативног система сличног Уник-у. То је опен соурце, врло прилагодљив и добар за сигурност. Фацебоок покреће Линук оперативни систем на Апацхе ХТТП серверима. Апацхе је такође бесплатан и најпопуларнији је веб сервер отвореног кода који се користи.
МиСКЛ

За базу података, Фацебоок користи МиСКЛ због његове брзине и поузданости. МиСКЛ користи се првенствено као складиште кључ-вредност, јер се подаци насумично дистрибуирају међу великим низом логичких инстанци. Ови логички случајеви су распоређени по физичким чворовима, а уравнотежење оптерећења врши се на нивоу физичког чвора.
Што се тиче прилагођавања, Фацебоок је развио шему прилагођене партиције у којој је свим подацима додијељен глобални ИД. Они такође имају прилагођену схему архивирања која се заснива на учесталости и недавних података о кориснику. Већина података се дистрибуира насумично.
ПХП

Фацебоок користи ПХП јер је добар веб програмски језик са широком подршком и активном заједницом програмера и добар је за брзу итерацију. ПХП је динамички типкан / интерпретиран скриптни језик.
Мемцацхе

Мемцацхе је систем за кеширање у меморији који се користи за убрзавање динамичних веб локација заснованих на базама података (као што је Фацебоок) кеширањем података и објеката у РАМ меморији ради смањења времена за читање. Мемцацхе је главни облик Фацебоока кеширања и помаже у ублажавању учитавања базе података.
Имајући систем за кеширање омогућава Фацебооку да буде брз као и приликом опозива ваших података. Ако не мора да иде у базу података, само ће дохватити ваше податке из предмеморије на основу вашег корисничког ИД-а.
Недостатак употребе ЛАМП-а
Фацебоок је схватио да постоје недостаци у кориштењу ЛАМП стака. Примјећује се да ПХП није нужно оптимизиран за велике веб странице и стога их је тешко мјерити. Такође, то није најбржи извршни језик, а оквир за проширење је тешко користити.

Мике Сцхроепфер, Фацебоок потпредседник инжењеринга, недавно је обавио интервју на ЕмТецх @ МИТ у вези с тим. "Скалирање било које веб странице је изазов," рекао је Сцхроепфер, „али скалирање друштвене мреже има јединствене изазове."
Рекао је да за разлику од других веб локација не можете само да додате више сервера да бисте решили проблем Фацебоок-овог „огромног међусобно повезаног скупа података“. Нове везе стално се стварају због корисничких активности.
Фацебоок је тако брзо порастао да се често суочавају са проблемима у вези са упитима у базама података, кеширањем и складиштењем података. Њихова база података је огромна и углавном сложено. Да би то објаснио, Фацебоок је покренуо мноштво пројеката отвореног кода и ванредних сервиса.
Како функционише Фацебоок? "" Тхе Енд Енд
Фејсбук сервиси за резервацију написани су на различитим језицима програма, укључујући Ц ++, Јава, Питхон и Ерланг. Њихова филозофија за стварање услуга је следећа:
1. Креирајте услугу ако је потребно
2. Креирајте оквир / сет алата за лакше креирање услуга
3. Користите прави програмски језик за задатак
Списак свих Фацебоок отворених кода може се наћи овде. Разговараћу о неколико основних алата које је Фацебоок развио.
Економичност (протокол)
Штедљивост је лаган оквир за даљински поступак позивања за развој скалабилних услуга на више језика. Тхрифт подржава Ц ++, ПХП, Питхон, Перл, Јава, Руби, Ерланг и друге. То је брзо, штеди време развоја и омогућава поделу рада на високо перформансним серверима и апликацијама.
Сцрибе (сервер сервера)
Сцрибе је сервер за обједињавање података дневника који се у реалном времену стримују са многих других сервера. То је скалабилан оквир користан за бележење широког низа података. Изграђен је на врху Тхрифта.
Цассандра (база података)

Цассандра је систем за управљање базама података дизајниран за обраду великих количина података раширених на многим серверима. Омогућава Фацебоок-ову функцију за Инбок Сеарцх и пружа структурисану продавницу кључева и вредности са евентуалном доследношћу.
ХипХоп за ПХП
ХипХоп за ПХП је трансформатор изворног кода за ПХП скрипт код и створен је да сачува ресурсе сервера. ХипХоп трансформише ПХП изворни код у оптимизовани Ц ++. Након што то учини, користи г ++ да би је компајлирао у машински код.
Закључак
Укратко, то је Фацебоок. Овај чланак би лако могао бити дужи за 37 страница ако бих хтио детаљније, али да одговорим на питање „Како функционише Фацебоок?“ Мислим да ће ово бити довољно. Ако погледате поред свих карактеристика и иновација, главна идеја која стоји иза Фацебоока је заиста врло основна ”” задржавање људи у вези. Фацебоок схвата снагу друштвених мрежа и непрестано уводи иновације како би њихов сервис био најбољи у послу.
Да ли сматрате овај чланак корисним? Оставите своје мисли, коментаре и идеје испод!
Стеве, менаџер заједнице у ВаинерМедији, страствено се бави друштвеним медијима и изградњом бренда.