Google SPDY - czy ktoś używał go na Apache?

17

Zastanawiasz się tylko, czy ktoś miał jakieś doświadczenie z Google SPDY na Apache? http://code.google.com/p/mod-spdy/

Korzystam z kilku serwerów sieciowych i chcę wiedzieć, czy wystąpiły jakieś problemy z modułem mod_spdy Apache i czy ktoś widział zauważalny wzrost prędkości w przeglądarkach obsługiwanych przez SPDY?

Luke McCallum
źródło
Istnieje wiele protokołów obsługiwanych przez SPDY sch, takich jak Python, Java, node.js itp. Dev.chromium.org/spdy Gdy korzystam z serwera Apache, mod_spdy jest głównym celem.
Luke McCallum
3
@Luke - to nie są protokoły.
symcbean
Dzięki za wyjaśnienie @symcbean. Twój wkład jest mile widziany.
Luke McCallum,

Odpowiedzi:

16

Jestem jednym z programistów mod_spdy. Na tym etapie moduł jest dość stabilny i w pełni zgodny z SPDY / 2 (wcześniejszy plakat błędnie twierdził, że nie obsługuje multipleksowania. To nieprawda). To powiedziawszy, nie jest tak stabilny jak podstawowe moduły Apache, takie jak mod_ssl. Uważam, że jest to moduł „beta” odpowiedni do użytku w środowiskach, w których można tolerować niektóre problemy. Obecnie istnieją strony internetowe z powodzeniem korzystające z mod_spdy.

Aktywnie pracujemy nad przygotowaniem modułu do pełnej produkcji i planujemy wydać pakiety DEB / RPM (oprócz obsługi kompilacji ze źródła) w ciągu kilku miesięcy.

O dostępności pakietów i innych aktualizacjach poinformujemy na naszym forum dyskusyjnym: https://groups.google.com/group/mod-spdy-discuss Dołącz do grupy, jeśli chcesz być na bieżąco z aktualnościami mod_spdy. Dzięki!

PS: Steve wspomina „Na przykład implementacja protokołu SPDY jest tylko zewnętrznym odwołaniem svn, które wciąga fragment drzewa źródeł Chromium C ++”. i chcę wyjaśnić, że jest to absolutnie właściwa rzecz dla mod_spdy lub dowolnego innego komponentu C ++ zgodnego z SPDY. SPDY wciąż szybko się zmienia, więc wykorzystując podstawową logikę kodowania / dekodowania SPDY z Chromium możemy być zsynchronizowani i na bieżąco, gdy zmienia się protokół SPDY. IMO błędem byłoby zrobić to w jakikolwiek inny sposób.

RE: SSL płacisz niewielką karę za SSL, tak, ale dla wszystkich oprócz najprostszych stron internetowych korzyści SPDY zrekompensują obciążenie SSL i zapewnią twoim użytkownikom bezpieczne połączenie.

Bryan McQuade
źródło
Cześć Bryan, dziękuję za odpowiedź. Z niecierpliwością czekam na SPDY na naszych serwerach Apache i nie mogę się doczekać pełnej wersji produkcyjnej. Mam nadzieję, że po wydaniu wydasz świetną piosenkę i zatańczysz. Twoje zdrowie!
Luke McCallum
Cześć Bryan . Oparłem instrukcję C ++ na tym komentarzu z 2010 roku: goo.gl/QqkPA . Czy już nie jest tak, że zamierzasz wprowadzić mod_spdy do głównego Apache? re. Występ; czy masz jakieś testy porównawcze pokazujące poprawę wydajności w mod_spdy?
Steve Smith,
Steve, znasz moją historię lepiej niż ja. :) Masz rację, wyciągając taki wniosek na podstawie mojego oświadczenia. Od tego czasu jednak wszystko się zmieniło. Już na samym początku zastanawialiśmy się, czy spróbować wdrożyć mod_spdy jako moduł, który można dodać do bazy kodu Apache HTTPD. Od tego czasu wydania 2.2 zostały zakończone, dlatego skupiamy się na tworzeniu samodzielnego modułu C ++ dla wersji 2.2. Może warto spróbować dodać obsługę SPDY w bagażniku Apache dla 2.4 i przyszłych wersji, ale obecnie nie ma tego w naszym planie.
Bryan McQuade,
3

Bawiłem się mod_spdy na mojej osobistej stronie, wyłącznie z ciekawości. Mod_spdy Apache należy uznać za pre-alpha; jest to w zasadzie implementacja szczytowa i nie jest bliska jakości produkcji. Na przykład jego implementacja protokołu SPDY jest tylko zewnętrznym odwołaniem svn, które wciąga fragment drzewa źródeł Chromium C ++. Obecnie nie implementuje niektórych ważnych funkcji SPDY, takich jak multipleksowanie. W związku z tym widziałem ujemny wzrost wydajności przy jego użyciu (w dużej mierze wynikający z konieczności wymuszenia SSL i użycia FCGI).

Nie jest dla mnie jasne, czy Apache jest właściwym miejscem do umieszczenia SPDY; Apache jest dziś bardziej kontenerem aplikacji; warstwa buforująca (Nginx lub lakier) wydaje się bardziej odpowiednia.

Wszystko, co powiedział ...

Wiki mod_spdy zawiera instrukcje budowania przeciwko Debianowi, ale nie polecam ich metody, ponieważ modyfikuje zainstalowany system. Zamiast tego polecam zbudowanie nowej instalacji Apache / SSL w / opt i uruchomić ją stamtąd; daje to łatwą opcję wycofania. Surowe kroki w tym celu:

  • Popraw OpenSSL z implementacją NPN i zainstaluj
  • Zbuduj Apache w oparciu o tę implementację SSL, umożliwiając silnik hybrydowy i wszelkie potrzebne mody
  • Jeśli potrzebujesz PHP, musisz zbudować mod_fcgid przeciwko Apache
  • Przenieś istniejącą konfigurację witryny do nowej instalacji Apache i przetestuj
  • Zbuduj i zainstaluj mod_spdy; wymaga to narzędzi Google depot_tools
  • Skonfiguruj witrynę inną niż SSL, aby wypychać nagłówek „Alternate-Protocol” (z mod_headers)
  • Wyłącz istniejące skrypty inicjujące Apache i instalacji dla wersji SPDY
  • Nie obserwuj żadnej poprawy wydajności i prawdopodobnie niestabilnej strony :)
Steve Smith
źródło
Dzięki @ Steve-Smith! Właśnie takiej odpowiedzi szukałem.
Luke McCallum
@ steve-smith Czy Spdy został zaktualizowany, odkąd wydałeś swoją opinię? Ponieważ twój komentarz sprawia, że ​​czuję się nieswojo z pomysłem testowania Spdy w środowisku produkcyjnym.
Tristan