Решение найдено, указанные прокси не поддерживают SMTP, из всех доступых арендных нашел только по 25 порт открытый, но mail,gmail, yandex уже не поддерживают 25 порт, тк он не зашифрованный.
Браузер, прокси и tcp
-
@fluffik said in Браузер, прокси и tcp:
Есть прокси которые ограничиваются потоками на основе tcp соединений и собственно вопрос в том можно ли каким-то магическим способом заставить браузер баса жрать не 15 потоков а 1, как на пост гете?
Нет, можно только по максимуму запретить запросы в браузере. Такие прокси мало подходят для браузера, либо нужно проплачивать большое число доступных потоков.
-
@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/, по ссылке как раз написано про лимиты и очереди запросов, что ожидают выполнения.
-
@UserTrue said in Браузер, прокси и tcp:
@sergerdn В итоге скорей всего сайт не загрузится нормально потому что большая часть запросов закончится таймаутом
Не уверен, надо тестировать. Надо подбирать timeout на стороне браузера BAS и haproxy. Уверен, что задача решаема в большинстве случаев.
https://peter.sh/experiments/chromium-command-line-switches/#timeout
-
@sergerdn said in Браузер, прокси и tcp:
@UserTrue said in Браузер, прокси и tcp:
@sergerdn В итоге скорей всего сайт не загрузится нормально потому что большая часть запросов закончится таймаутом
Не уверен, надо тестировать. Надо подбирать timeout на стороне браузера BAS и haproxy. Уверен, что задача решаема в большинстве случаев.
https://peter.sh/experiments/chromium-command-line-switches/#timeout
Это не тот таймаут. Запрос ресурсов сайта и просто fetch запросы будут крашиться из-за таймаута
-
@UserTrue said in Браузер, прокси и tcp:
@sergerdn said in Браузер, прокси и tcp:
@UserTrue said in Браузер, прокси и tcp:
@sergerdn В итоге скорей всего сайт не загрузится нормально потому что большая часть запросов закончится таймаутом
Не уверен, надо тестировать. Надо подбирать timeout на стороне браузера BAS и haproxy. Уверен, что задача решаема в большинстве случаев.
https://peter.sh/experiments/chromium-command-line-switches/#timeout
Это не тот таймаут. Запрос ресурсов сайта и просто fetch запросы будут крашиться из-за таймаута
Так напиши "тот" самый timeout. Ты так уверенно пишешь, как будто уже протестировал предложенное мной решение с haproxy. Как писал выше - надо тестировать.
-
@sergerdn said in Браузер, прокси и tcp:
Так напиши "тот" самый timeout. Ты так уверенно пишешь, как будто уже протестировал предложенное мной решение с haproxy. Как писал выше - надо тестировать.
Я просто прочитал внимательно описание того что ты нашел.
Issues a stop after the specified number of milliseconds. This cancels all navigation and causes the DOMContentLoaded event to fire. ↪Проще говоря это не увеличит ожидания выполнения запросов.
-
@UserTrue said in Браузер, прокси и tcp:
@sergerdn said in Браузер, прокси и tcp:
Так напиши "тот" самый timeout. Ты так уверенно пишешь, как будто уже протестировал предложенное мной решение с haproxy. Как писал выше - надо тестировать.
Я просто прочитал внимательно описание того что ты нашел.
Issues a stop after the specified number of milliseconds. This cancels all navigation and causes the DOMContentLoaded event to fire. ↪
Вероятно, я не внимательно прочитал описание конкретно это параметра. Спасибо, что указал мне на это.
Какие твои предложения по увеличение времени ожидания запроса на стороне браузера BAS? -
@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 В басе то я разбираюсь а как приходит код то тут уже не моя консинстенция
Могу предложить учиться и повышать свой личный уровень как программиста. Есть еще вариант нанять человека, кто сделает эту работу за тебя.
Или ищи другое решение твоей задачи, отличное от моего, который ты сможешь реализовать. Я выше написал решение, как делал бы я, если стояла такая задача. Вероятно, мое решение не единственное существующее.