ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx as reverse proxy for weblogic


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: nginx as reverse proxy for weblogic
  • From: Илья Шипицин <chipitsine@xxxxxxxxx>
  • Date: Sun, 27 Jan 2013 15:08:19 +0500
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=AT7Ef+3My1E0Ky6Is+mPWFCGoGF5rOI+1sXB6OUZYsM=; b=kS4mdsiYl6nlMd5WVumd2nMln2n3L3dlRmNS74MloADS+Vo2s6iLE/dk/OfgeJSLA7 7HrHCFhK2tJVccVO90N1+bTFD3+ZKG4GPrKRUWjdq6pwPzX5NTeN00g/8RJYxgZmMiEh TfmMSAyf+o/1tfWNTPv6nFktAuFmKaNa1GfzyDOHIl/WEh2GVGyEIYG+KqKzd/D1+Wgs +3qG3y0L/zw7GpdZ40CccMsYvmfGesB/PoMBzuiVtFy4NoXfk/gkU6GFpbGqEyxncqZA dOYm/FlNWY+tjrYjfZe6jJftzmm2d7bA5rb79Afm9CmbGvzEEsug6ujJuNcxZZmeYw6B bbvA==
  • In-reply-to: <3eeba435c46c2909543810b9b27f0580.NginxMailingListRussian@forum.nginx.org>
  • References: <3eeba435c46c2909543810b9b27f0580.NginxMailingListRussian@forum.nginx.org>

если apache+weblogic-plugin вас устраивает, используйте его.


27 января 2013 г., 13:45 пользователь teo <nginx-forum@xxxxxxxx> написал:
Была мысль заменить связку apache+ webllogic-plugin на nginx. Но сколько раз
не пробовал - все равно родной плагин работает лучше.
Неужели nginx за столько времени не додумался до того, что 10 лет назад
сделали в BEA?

Сейчас я пробую вот такую конфигурацию

upstream web_backend {
    ip_hash;
    least_conn;
    server 192.168.2.11:7001;
    server 192.168.2.12:7001;
    server 192.168.2.13:7001;
}

    location / {
        proxy_pass      http://web_backend;
        proxy_http_version 1.1;
        proxy_set_header WL-Proxy-Client-IP $remote_addr;
        proxy_set_header Proxy-Client-IP $remote_addr;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_read_timeout 600;
        proxy_send_timeout 1;
    }

Результат - да, все работает только до определенного момента (секунд этак
30). Видно что все запросы валятся на один инстанс weblogic, забивают все
его очереди и в результате все висит.
Т.е. почему нет заявленного round-robin и когда nginx решит переключиться на
другой инстанс - не известно.
Впрочем я конечно не уверен что все происходит именно так, но факты такие -
через некоторое время консоль управления подвисает - это происходит обычно
тогда, когда один из инстансов тупо не отвечает ни на какие запросы. Далее
nodeManager, видя что его инстанс не отвечает - валит его и запускает
вновь.
Если консоль все-таки ответила, то видно что кол-во конектов на этих 3х
инстансах распределено примерно так 10+1200+10.

Почему же этого не происходит при родном плагине?
Во 1х плагин постоянно тестирует инстансы, посылая запрос на несуществующую
страничку и при этом его цель не получить какой-то конкретный ответ, а
просто увидеть что инстанс жив, даже если это ответ 404. И заодно оценить
насколько тот занят - если задержка велика - значит надо выбрать другой.
А тестировать инстанс пришедшим запросом - а вдруг это поисковый запрос,
который требует много ресурсов и ответ будет долгим?
Кстати в параметрах настройки плагина нет таймаутов - т.е. если вы будете
вытаскивать 20гиговый файл, то вас не срубят на 10й минуте.
Во 2х, он добавляет куки в ответ инстанса, с тем, чтобы знать на каком
конкретно сервере исполнялся предыдущий запрос.
При этом никакие циски с NAT и диапазоном IP адресов уже не страшны (это
когда каждый конект идет через другой адрес) - он заботится о том, чтобы
инстансу было легче доставать сессию клиента.
В 3х плагин поддерживает keep_alive со стороны инстанса.

Так может все-таки добавить такие фичи в ngx_http_proxy_module?
Или я что-то пропустил и кто-то знает решение с имеющимся функционалом?
Версии в которых это пробовал я - 1.0.15 из epel и 1.2.6.

Posted at Nginx Forum: http://forum.nginx.org/read.php?21,235603,235603#msg-235603

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.