Page 1 of 1

как поженить Varnish с Nginx

Posted: Wed Jun 20, 2018 8:25 am
by styleroom
парни привет
как грамотно поженить Varnish с Nginx на VestaCP?
Nginx у меня установлен в связке с Apache
upd: Varnish нужен для Magento

Re: как поженить Varnish с Nginx

Posted: Fri Jun 22, 2018 8:37 am
by demian
Varnish не нужен для Magento, если в связки есть nginx. лишнее дублирование однородного функционала скорее приведет к замедлению работы.

nginx+php-fpm и так дает почти максимальную скорость работы. ускорить подобную связку можно только использовав memcache, и то при условиях: наличии достаточного количества оперативной памяти и сервер работает не на ssd дисках.

Re: как поженить Varnish с Nginx

Posted: Fri Jun 22, 2018 8:54 am
by styleroom
demian wrote:
Fri Jun 22, 2018 8:37 am
Varnish не нужен для Magento, если в связки есть nginx
в моем случае - нужен
так как у меня связка Apache + Nginx
и вопрос в том, как правильно разрулить настройку портов в троице
- Varnish
- Nginx
- Apache
upd: в рамках VestaCP

Re: как поженить Varnish с Nginx

Posted: Fri Jun 22, 2018 9:28 am
by demian
styleroom wrote:
Fri Jun 22, 2018 8:54 am
demian wrote:
Fri Jun 22, 2018 8:37 am
Varnish не нужен для Magento, если в связки есть nginx
в моем случае - нужен
так как у меня связка Apache + Nginx
и вопрос в том, как правильно разрулить настройку портов в троице
- Varnish
- Nginx
- Apache
upd: в рамках VestaCP
Varnish Cache is a web application accelerator also known as a caching HTTP reverse proxy

nginx [engine x] — это HTTP-сервер и обратный прокси-сервер, почтовый прокси-сервер, а также TCP/UDP прокси-сервер общего назначения, изначально написанный Игорем Сысоевым. Возможность кэширования входит в базовый функционал.

Varnish сложнее в настройке если с ним не сталкивался. к томуже не держит кэш только в оперативной памяти. Оптимально для работы ему надо 1G для кэша, 500M для работы.
В вашем случае Varnish вы просто дублируете функционал имеющийся в nginx, получить прирост от этого минимальный если вообще будет. 1.5Gb это примерно 5+10 одновременных подключений к серверу.
Имхо установка Varnish при том, что есть nginx - это выбросить на помойку 1.5Gb оперативной памяти.

Re: как поженить Varnish с Nginx

Posted: Fri Jun 22, 2018 10:16 am
by styleroom
demian wrote: Имхо установка Varnish при том, что есть nginx - это выбросить на помойку 1.5Gb оперативной памяти.
короче, или одно или другое?

Re: как поженить Varnish с Nginx

Posted: Mon Jun 25, 2018 5:48 am
by demian
styleroom wrote:
Fri Jun 22, 2018 10:16 am
demian wrote: Имхо установка Varnish при том, что есть nginx - это выбросить на помойку 1.5Gb оперативной памяти.
короче, или одно или другое?
да, как то так.
если есть лишняя оперативка и диски не ssd, максимум что можно поставить memcache, модуль в Magento под него есть.
Но не стоит забывать про специфику работы unix/linux свободная память используется под кэш файловой системы который освобождается по мере необходимости, в то время как memcache не освобождает резервированную/занятую память.

Т.е чтобы добиться максимальной производительности, при работе на один ресурс/сайт, сервера, необходимо сначала анализ движка,посещаемости и пр., а также придерживаться принципа минимизации: чем меньше служб работают на сервере, тем больше свободной оперативной памяти.

Re: как поженить Varnish с Nginx

Posted: Sat Apr 06, 2019 5:32 am
by Vor_tex
Для меня очень актуальный вопрос на эту тему, а рабочих мануалов найти не могу, так чтобы имея на борту Vesta Cp и nginx + php-fpm (без апача) прикрутить Varnish....
Буду очень признателен если кто подскажет как это осуществить или направит на мануал...

Re: как поженить Varnish с Nginx

Posted: Sat Apr 13, 2019 2:46 am
by mr.flash
Вам нужна связка Nginx:443 - Varnish:6081 - Nginx:80
Создайте template для nginx в блоке location этот код
proxy_pass http://127.0.0.1:6081;
proxy_read_timeout 300;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header Host $host;
varnish слушает 6081 и дальше идет на бекенд
Естественно это все для https.
Varnish быстрее чем nginx. Держать кеш даже на быстром Nvme хуже чем в оперативной памяти. 1 Nginx нужен как ssl терминатор. 2 nginx как web-сервер.
Также в конфиге varnish вам нужно учесть редирект с http на https.

Re: как поженить Varnish с Nginx

Posted: Tue Jun 15, 2021 4:52 pm
by emlax
Привет! у меня nginx, php fpm, ubuntu 18.04, WP, varnish
Посмотрите пожалуйста на скриншот https://dropmefiles.com/Oyqfr где я допустил ошибку? wodpress отдает 503 ошибку
_____________
defoul.vcl
backend default {
.host = "127.0.0.1";
.port = "82";
}
________________
varnish service
ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :82 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m
____________
nginx

server {
listen external_ip:443 ssl http2;
location / {
proxy_pass http://127.0.0.1:82;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header Host $host;