Dlaczego warto używać Mongrel2?

I ' m confused what purpose Kundel2 służy / zapewnia, że nginx jeszcze nie.

(Tak, czytałem podręcznik ale muszę być zbyt wielkim noobem, aby zrozumieć, jak to zasadniczo różni się od nginx)

Mój obecny stos aplikacji internetowych to:
- nginx : webserver
- Lua : język programowania
- [[1]}FastCGI + LuaJIT : Aby podłączyć nginx do Lua
- Postgres : baza danych

Author: shingara, 2011-05-22

2 answers

Jeśli mógłbyś wymienić tylko jedną rzecz, to byłoby tak, że Mongrel2 jest zbudowany wokół ZeroMQ, co oznacza, że skalowanie serwera www nigdy nie było łatwiejsze.

Jeśli pojawi się żądanie, Mongrel2 otrzyma je(nic niezwykłego, tak samo jak w przypadku NginX i innych httpd). Następną rzeczą, która się wydarzy, jest to, że Mongrel2 dystrybuuje zadanie kompilowania odpowiedzi do backendów N (z obsługą ZeroMQ), czeka na ich wykonanie, otrzymuje wyniki, kompiluje odpowiedź i wysyła ją do klienta.

Magia polega na tym, że n może być dowolną liczbą i że każda z n może być zapisana w dowolnym języku obsługiwanym przez ZeroMQ (20 lub więcej) plus, wszystko przechodzi przez sieć, więc każde n może być dedykowanym pudełkiem, ewentualnie w innym centrum danych.

Dzięki Nginx i całej reszcie musisz skalować swoją warstwę logiczną, Mongrel2 pozwala na rozpoczęcie (z punktu widzenia cyklu żądania/odpowiedzi) tego właśnie miejsca, w którym żądanie uderzy w twoją warstwę logiczną infrastruktury, na httpd zamiast pozwolić złożoności przeniknąć do warstwy logiki, która wieje złożoność w górę o co najmniej jeden rząd wielkości imo.
 116
Author: Tom,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-26 09:26:34

Powinieneś spojrzeć na mocne strony każdego z nich i zdecydować się na użycie jednego lub obu w zależności od przypadków użycia..

Chociaż wydaje się, że nginx robi wszystko, co zapewnia mongrel2 na powierzchni, przekonasz się, że istnieją poważne różnice w ostrości między tymi dwoma.

Nginx świeci jako front-end webserver, który może proxy żądania do backend webservers/appservers, a także służyć treści statycznej.

Kundel2 to niewielka zmiana w stosie. Jak wspomniano, jego moc pochodzi z użycia zeromq jako warstwy transportowej między nim a serwerami aplikacji zaplecza. Może obsługiwać dynamiczne adresy URL żądań (żądania aplikacji) i kierować część obliczeniową zadania do różnych backendów za pomocą zeromq.. mongrel2 pozwala Ci obsługiwać nie tylko http, websockets itp., ale także inne protokoły (jeśli jesteś skłonny to zrobić) z tego samego serwera. użytkownik nigdy nie wiedziałby, że części aplikacji są serwowane z różnych backendów.

Jeśli Twoje wymagania dotyczące funkcjonalność aplikacji WebApp ciągle się zmienia lub chcesz dodać rzeczy takie jak strumieniowanie, możliwość kodowania w różnych językach w zapleczu itp., wtedy na pewno spojrzę na mongrel2. Lub nawet mieć hybrydę gdzie używasz nginx / haproxy / varnish do plików statycznych i buforowania, a cała reszta jest skierowana do mongrel2.

 13
Author: lapax,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-02-19 03:32:28