Отключите все лишнее на целевой странице если она одна, это реально сделать - например скрипты всяких фейсбуков, сторонней аналитики и так далее. Обычно сервесы используют много сторонних скриптов, которые не влияют на работу сайта, но сильно нагружают проц.
Смотрите как идет распределение нагрузки - возможно оно не сплашное, а пиками - тогда можно попробовать запускать потоки более равномерно. Чтоб избегать этих пиков.
Чаще всего можно отрисовку снизить вплоть до 10 (ну 20) .... На загрузку проца, это как раз сильно влияет.
Если сервер свой и без видюхи, то стоит поставить в него видюху.
50 в нынешних условиях для баса с браузером, достаточно много. Можно попробовать разбить на несколько копий баса по 25 например.
Можно использовать рам диск для работы с профилями - но это уже продвинутый уровень.
Браузер, прокси и tcp
-
@sergerdn said in Браузер, прокси и tcp:
Вероятно, я не внимательно прочитал описание конкретно это параметра. Спасибо, что указал мне на это.
Какие твои предложения по увеличение времени ожидания запроса на стороне браузера BAS?У меня их нет ) Я обычно пишу на запросах в таком случае. Еще можно пробросить dns для сайта на свой сервер, а так делал в командой строке есть такая опция, я каждый поток пробрасывал на свой порт и там уже распределял трафик, но это больше про кэширование и подмену данных.
-
@UserTrue said in Браузер, прокси и tcp:
Еще можно пробросить dns для сайта на свой сервер, а так делал в командой строке есть такая опция, я каждый поток пробрасывал на свой порт и там уже распределял трафик, но это больше про кэширование и подмену данных.
Интересное решение через dns. Я чтобы манипулировать контентом ставил man-in-the-middle прокси между BAS и прокси провайдером.
-
@sergerdn said in Браузер, прокси и tcp:
@UserTrue said in Браузер, прокси и tcp:
Еще можно пробросить dns для сайта на свой сервер, а так делал в командой строке есть такая опция, я каждый поток пробрасывал на свой порт и там уже распределял трафик, но это больше про кэширование и подмену данных.
Интересное решение через dns. Я чтобы манипулировать контентом ставил man-in-the-middle прокси между BAS и прокси провайдером.
Я прямо из бас в node запустил самописный сервер и на него пробрасывал ))
-
@sergerdn said in Браузер, прокси и tcp:
@fluffik said in Браузер, прокси и tcp:
Есть прокси которые ограничиваются потоками на основе tcp соединений и собственно вопрос в том можно ли каким-то магическим способом заставить браузер баса жрать не 15 потоков а 1, как на пост гете?
Вероятно, можно поставить между прокси-провайдером и BAS, load-balancer, который будет ограничивать кол-во соединений к прокси-провайдеру и ставить в очередь запросы от BAS .
BAS browser -->> haproxy TCP load balancer with limits and queue --> proxy provider
Смотри подробнее https://www.haproxy.com/blog/protect-servers-with-haproxy-connection-limits-and-queues/, по ссылке как раз написано про лимиты и очереди запросов, что ожидают выполнения.
Я протестировал идею. У меня работает, пробовал загружать пачку сайтов в цикле, сходу не словил каких-то ошибок. В том числе тыкал по всем ссылкам на https://www.amazon.com/. На стороне BAS никаких timeouts не настраивал.
Я настроил proxy ip в BAS на свой сервер, на своем сервере поставил haproxy и прикрутил лимит соединений к прокси-провайдеру.
Схема идеи осталась той же:
BAS browser -->> haproxy TCP load balancer with limits and queue --> proxy providerСтатистика соединений:
Config haproxy:
global log /dev/log local0 log /dev/log local1 notice chroot /var/lib/haproxy stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners stats timeout 30s user haproxy group haproxy daemon # Default SSL material locations ca-base /etc/ssl/certs crt-base /etc/ssl/private # See: https://ssl-config.mozilla.org/#server=haproxy&server-version=2.0.3&config=intermediate ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384 ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256 ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets defaults log global mode http option httplog option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 errorfile 400 /etc/haproxy/errors/400.http errorfile 403 /etc/haproxy/errors/403.http errorfile 408 /etc/haproxy/errors/408.http errorfile 500 /etc/haproxy/errors/500.http errorfile 502 /etc/haproxy/errors/502.http errorfile 503 /etc/haproxy/errors/503.http errorfile 504 /etc/haproxy/errors/504.http listen stats bind :8080 mode http stats enable stats hide-version stats realm Haproxy\ Statistics stats uri / stats auth SomeUsername:SomePassword frontend front_proxy_1 mode tcp maxconn 20000 bind :22225 default_backend back_proxy_1 backend back_proxy_1 mode tcp balance leastconn timeout queue 30s server s1 zproxy.lum-superproxy.io:22225 maxconn 15 -
@UserTrue said in Браузер, прокси и tcp:
@sergerdn Ну прикольно, тогда ему надо тестить на конкретном сайте, тут еще зависит от скорости прокси и сайта, есть такие что тонну запросов шлют
Можно в haproxy дополнительно заблокировать запросы к сайтам с аналитикой и подобным, чтобы не нагружать прокси-провайдера. Это тоже может как-то помочь.
-
@sergerdn а локально это возможно сделать? а что если много проксей, но порты только разные? И можно если не затруднит инструкцию для не программистов?в идеале видео)) куда тыкнуть что вставить))) В басе то я разбираюсь а как приходит код то тут уже не моя консинстенция
-
@fluffik said in Браузер, прокси и tcp:
@sergerdn а локально это возможно сделать?
Haproxy windows не поддерживает.
@fluffik said in Браузер, прокси и tcp:
@sergerdn а что если много проксей, но порты только разные?
Дописать в конфигурации haproxy нужные порты по образцу. Можно как руками, так и набросать не сложный скрипт для этого, если портов много.
@fluffik said in Браузер, прокси и tcp:
@sergerdn И можно если не затруднит инструкцию для не программистов?в идеале видео)) куда тыкнуть что вставить)))
Думаю, что это можно сделать, но это выходит за рамки бесплатной помощи коллеге на форуме.
@fluffik said in Браузер, прокси и tcp:
@sergerdn В басе то я разбираюсь а как приходит код то тут уже не моя консинстенция
Могу предложить учиться и повышать свой личный уровень как программиста. Есть еще вариант нанять человека, кто сделает эту работу за тебя.
Или ищи другое решение твоей задачи, отличное от моего, который ты сможешь реализовать. Я выше написал решение, как делал бы я, если стояла такая задача. Вероятно, мое решение не единственное существующее.