Hogyan osztanak el több száz gigabit forgalmat a Facebook szerverei?

 ( hup | 2015. június 10., szerda - 10:58 )

Egy ekkora rendszer terheléselosztása nem kis feladat. A június 22-i HWSW free! meetupon előad Alex Gartrell, a Facebook szoftvermérnöke is. Alex fő feladata a Linux kernel hálózati képességeinek fejlesztése, a kernelben lévő IPVS ugyanis a Facebook terheléselosztásának is sarokköve. További részletek »

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Csak tipp:

1) DNS round robin 5-6 IP cimmel ugyanarra a hosztnevre, igy meg van a redundancia
2) IP anycast-al behirdetni route tablakba minden kontinensen ugyanazt az 5-6 cimet, igy a user mindig a sajat helyzete szerinti legkozelebbi datacenterbe jut
3) combos Radware Alteon HW loadbalancereket a datacenterbe, moge par szaz v. ezer front end szervert, ami moge 100-200.000 backend szervert.

az en abszolut kedvencem a google (jopar evvel ezelotti) megoldasa: a gmail.com domain mx rekordjahoz felvettek vagy 80-100 hosztot, ami azzal a funky mellekhatassal jart, hogy a dns valasz tullepte az 512 byte-ot, igy bizonyos rezolverek beintettek a fakkot. 1-2 napon belul aztan fixalta a G...

--
"what is mostly works", "mods that I describe is choosed" (hrgy84 "nem vagyok anyanyelvi angolos")

A gond csak az, hogy a backend szerverek (és storage-k) mögötti szinkronizáció nagyságrendben akkora forgalmat generál, ha nem többet....gondolom.....

Valószínűleg a kifelé menő forgalmuk a legtöbb, a dc-n belül nem annyira húzós, de ott a sáv is bőséges amúgy.

--

A "belül" az néha azt jelenti, hogy kontinensek között kellene replikálni.;)

Tudom. De azt saccolom, hogy amíg valaki feltölt 1 képet, amit szét kell szórni, addig ugyanonnan letöltenek 100-at, tehát a kifelé menő forgalom jóval nagyobb lesz, mint dc-n belül vagy dc-k között. De utóbbira szerintem amúgyis jobban odafigyelnek, hogy legyen elég dedikált sáv, mert kritikusabb.

--

Azért ez a kelleténél jobban le lett egyszerűsítve :). Én is le tudom írni 3 egyszerű lépésben, hogyan kell sugárhajtóművet építeni, de annak az információtartalma a zéróhoz fog konvergálni :).

--

http://sethgodin.typepad.com/.a/6a00d83451b31569e2019aff29b7cd970c-800wi :D

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

Megelőztél :D

Nem én fogom 22-n tartani az előadást, szóval nézd el nekem. Kíváncsian várom a tényleges előadó mennyire fog belemenni a konkrétumokba.
--
WP8.x kritika: http://goo.gl/udShvC

Nagyon érdekes lenne, de attól tartok, hogy ebbe nem fog belemenni, hanem csak nagyon magas szinten, és esetleg inkább a fent említett kernel részbe fog belemenni részletesen, ami egy szűk körnek lehet érdekes. Ezek a dolgok egy cég legnagyobb titkai szoktak lenni.

--

ez egy klasszikus meetup. ergo az eloadas csak a temafelvetesre szolgal, utana pedig lehet beszelgetni rola az eloadoval.

Pont nem ez a titok. Ha a load balancing technologiat mellettuk masok is fejlesztesztik es tesztelik, az nekik csak jo.
Az o profiljuk a facebook site informaciotartalmanak a kihasznalasa, nem szolgaltatasok beruzemeltetese. Igy nekik az a jo, ha minel olcsobban meg tudjak csinalni.

Ha a Cisco v. Juniper adna elo, akkor valoban igazad lenne.

Azért itt bőven nem csak a hálózati eszközökről van szó.

Már abban nagy belső tudásvagyon van, hogy hány és milyen eszközt hogyan drótoznak össze, hogy meglegyen a kellő sávszél és redundancia. Leginkább az az érdekes, hogy milyen üzleti logika van mögötte, ami abszolút Facebook-specifikus. Tudni kell, melyik kérést melyik node-ok tudják kiszolgálni egyáltalán, ez az elosztás folyamatosan változhat, és még valakinek azt sem árt észrevenni, ha kiküldesz egy kérést, de még a válasz előtt lehal az a node, akinek kiküldted. Földrészenként, percenként jelentősen változhat a terhelés, amit jósolni kell és alkalmazkodni hozzá, stb.

--

Azaz?

Ez mind olyan dolog, ami titok, csak ők fejlesztik maguknak, és nem fogják elmondani a meetupon. Szerintem.

--

OK, kozben rajottem, h te nyertel v. legalabbis fogsz nyerni ugyis.

1. Nem leszek ott.
2. Nyilvan nem megy bele teljes reszletesseggel, akkor pedig te azonnal ravaghatod, hogy megmondtad.
3. A gyakorlatban szerintem ki sem fog derulni, hacsak nem kerdezel ra explicit modon (goto 2). Esetleg azert rakerdeznel, hogy negyed oraban felvazolna a szirszarjukat csak ugy?:)

De amugy tenyleg, mit varsz? Egy meetup gondolatebresztonek valo.

sub

1

Úgy látom hogy az utóbbi napokban elég rosszul, ehe.