Google+ od kuchni: jak Mountain View stworzyło tak sprawną architekturę?
Dyskusje o Google+ nie ustają. Dawno nie widzieliśmy tak szybko rosnącego projektu w Sieci – nie minęło dwa tygodnie od startu, a z serwisu korzysta już ponad 10 milionów internautów, i to mimo tego, że wciąż jest on zamknięty, dostępny tylko przez zaproszenie. Wiele osób w swoich kręgach trzyma już po kilkudziesięciu i więcej znajomych. Mimo tego szybkiego wzrostu Google+ działa niezwykle stabilnie. Jak to jest możliwe, szczególnie, że projekt bazuje na wielu młodych technologiach?
Pod względem tempa wzrostu, Facebook ma co zazdrościć Google+. Serwis Zuckerberga miał tyle użytkowników dopiero po trzech miesiącach działania, a to oznacza, że Google ma na tym etapie około sześciokrotnie większy wzrost niż Facebook. A taka szybkość wzrostu mogłaby prowadzić do awarii.
Google tymczasem przyznaje – jego społecznościowy serwis to pierwszy taki sprawdzian dla wielu dosyć świeżych technologii. Wykorzystuje wzbogaconą Javę, XMPP, nowy system bazodanowy, a wkrótce kodek VP8. Jednak do tej pory, oprócz pojawienia się problemu z zapełnieniem dysku systemu powiadomień (tak, najwyraźniej i Google ma swoje granice pojemności) nie doszło do większych usterek. Co więc stoi za tak sprawną architekturą?
Rąbka tajemnicy uchylił Joseph Smarr, szef techniczny w Google+ i były szef serwisu społecznościowego Plaxo. Wyjaśnił, że backend został stworzony w Javie oraz Guice. Jest to pakiet rozwiązań, którymi Google wzbogaciło rdzenne funkcje Javy, nie mogąc się doczekać na ich oficjalną implementację w samym języku.
Po stronie klienta intensywnie używany jest JavaScript z wykorzystaniem Closure. Optymalizuje on kod JavaScriptu, dostarcza gotowe fragmenty interfejsu i szablony styli, które mogą być obsługiwane po stronie serwera (Java) jak i po stronie klienta. Pomaga też w zachowaniu dobrego stylu kodu JS dzięki Closure Linter (coś jak CSSLint czy JSLint).
Do Google+ nie trafił jednak bardziej rozbudowany projekt, którym jest GWT (Google Web Toolkit) Był używany on już w AdWords i Wave. Co sprawiło, że nie został wykorzystany? Tego niestety nie wiemy.
Zapewnienie poprawnej nawigacji w aplikacji, która nie przeładowuje często strony, uzyskano dzięki HTML5 History API, które w przypadku braku obsługi HTML5 przełącza się na styl nawigacji ze znakiem # w adresie URL.
Od strony serwera wykorzystano system bazodanowy BigTable i nowy system zarządzania plikami o nazwie Colossus, którego powstanie ujawniono pod koniec zeszłego roku.
Wideoczat Google+ Hangouts wykorzystuje zaś technologie XMPP, Jingle, RTP, ICE, STUN i SRTP. Opóźnienia mają być przez to mniejsze niż 100 ms.
XMPP to jak zapewne miłośnicy Jabbera wiedzą, podobny do XML-a protokół, umożliwiający wymianę wiadomości i statusu w czasie rzeczywistym. Jingle rozszerza protokół o komunikację P2P: rozmowy głosowe i wideo. RTP to protokół standaryzujący pakiety danych audio i wideo przesyłane przez Internet. ICE również bazuje na XML i odpowiada za obsługę subskrypcji treści. STUN to zestaw metod i protokół obsługi komunikacji głosowej, wideo i innej między komputerami ukrytymi za routerami (w sieciach NAT). SRTP zajmuje się szyfrowaniem połączeń w czasie rzeczywistym.
Od strony obsługi wideo na komputerze klienta wykorzystano WebRTC. Obecnie trzeba zainstalować w tym celu wtyczkę dla Google Talk. Jednak niedługo może nie być to konieczne, ponieważ Google chce zintegrować ją z Chrome. Wtedy Hangouts będzie używać już kodeka VP8 zamiast H.264.
To tyle odnośnie spraw technicznych. Raczej mało prawdopodobne, aby marketingowiec, czy szef firmy nie zajmujący się programowaniem dotrwał do tego momentu. Ale jeśli zdołał przetrzymać technikalia, to i dla niego znajdzie się dobra informacja. Christian Oestien, zarządzający produktem Google+, zapowiedział, że trwają prace nad funkcjami dla biznesu, takimi jak dane analityczne i integracja z innymi kontami biznesowymi, ale nie chciał zdradzić więcej szczegółów. Poprosił, aby na razie nie tworzyć kont biznesowych, ale poczekać na nowe funkcje, bo otwarte konta zostaną skasowane. Pojawiły się plotki, że konta biznesowe zostaną zaprezentowane w przyszłym tygodniu, jednak Oestien ich nie potwierdził (ani nie zaprzeczył).
źródło: infoq.com
Komentarze
Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka
(słowa muszą być rozdzielone spacją).
W treści komentarza można używać języka formatowania BBcode.
Popularne
Nazwa padła ofiarą szantażystów, inni polscy hosterzy też zagrożeni?
19
Premiera Diablo 3 wzbudziła dyskusję na temat gier, które zawsze chcą być online
19
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Nowy problem z Windows 8: bootuje się za szybko
10
Amerykańscy rodzice straszeni „e-narkotykami” dostępnymi w Sieci
21
Z okazji wypuszczenia akcji Facebooka przypomnijmy sobie, kim jest Zuckerberg
10
Blueseed: libertariańska sztuczna wyspa przyciągnęła już ponad sto startupów z całego świata
8
Rewolucja w Firefoksie, nowa łatka czterokrotnie ograniczyła zużycie pamięci
20
Darmowy Internet od Aero2. Jak go zdobyć i jakie są prawdziwe koszta? Instrukcja krok po kroku
11
CVDazzle: makijaż jest w stanie pokonać automatyczne systemy ulicznego monitoringu
3
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
17
Co czeka programistów po czterdziestce?
27
Ubuntu 12.04 LTS już dostępny: stabilna dystrybucja na następne pięć lat?
28
Społeczność
voluu A ja mam problem. MIanowicie, po dodaniu kodu z tego poradnika miniaturki...
Sebek Pozycjonowanie stron za pośrednictwem firm oferujących
swoje usługi nie...
asdosad jak to zrobić na xp??
lol Jak ktoś tu wcześniej zauważył - artykuł jest o niczym, a właściwie ukrytą...
grzybecki To raczej powinien być znak dla programistów Social Media, aby swoje...
facebug @rychu
Strona wchodzi, ślamazarnie ale wchodzi mam takie...
Dave Smith Jestem Pastor Dave Smith prywatny pożyczkodawca pieniądze, z czego ponad...
- Najdmen.pl: Konta www z wyłączonym licznikiem transferu od IONIC.pl (1)
- 2BE.PL: [Oferta] Promocja jak złoto w 2BE.PL (1)
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
Polecane książki
Praca
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |









#1 Sceptyk 2011-07-14 14:13:27 0
IP: 83.10.185.[...] Mozilla/5.0 (Windows NT 6.0; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0
#2 Kreol 2011-07-19 09:39:28 0
IP: 62.148.81.[...] Mozilla/5.0 (Windows NT 5.1; rv:6.0) Gecko/20100101 Firefox/6.0