code_28569.txt
Вот сделал я многопоточный чекер http прокси.
Но есть ошибки:
1)Не запускает сразу n количество потоков. То есть если поставленно 5 потоков то программа сначало запустит к примеру 3, потом через некоторое время 2
2)Начинает виснуть/замедлять создание потоков, когда работает более 20 минут
3)Жёстко виснет, если попадается плохой прокси. В компоненте HTTP_GET такого не бывает
4)Не выдерживает более 10 потоков
Подскажите, что я делаю не так
Этот топик читают: Гость
Ответов: 305
Рейтинг: 4
|
|||
карма: 0 |
| ||
файлы: 1 | code_28569.txt [4KB] [120] |
Ответов: 1841
Рейтинг: 369
|
|||
mmmmm писал(а): сделал я многопоточныйЧто-то я не вижу в схеме Thread. Всё работает в основном потоке, вот и виснет/замедляется. |
|||
карма: 1 |
|
Ответов: 305
Рейтинг: 4
|
|||
|
|||
карма: 0 |
| ||
файлы: 1 | code_28570.txt [5.4KB] [327] |
Ответов: 1536
Рейтинг: 176
|
|||
mmmmm, поставь таймер
|
|||
карма: 1 |
| ||
файлы: 1 | code_28571.txt [244B] [105] |
Ответов: 1841
Рейтинг: 369
|
|||
mmmmm сейчас уже доделаю упрощённую версию чекера и опубликую.
Там используется недокументированная фича TCP_Server. Просто добавьте этот элемент в схему и всё заработает. |
|||
карма: 1 |
|
Ответов: 305
Рейтинг: 4
|
|||
ser_davkin, тоже самое
CriDos, Подождём-с ------------ Дoбавленo в 12.34: CriDos, передумали? |
|||
карма: 0 |
|
Ответов: 1841
Рейтинг: 369
|
|||
mmmmm, нет, я на работе;)
------------ Дoбавленo в 19.18: Фух, я дома! Вот собственно схемка:
|
|||
карма: 1 |
| ||
Голосовали: | mmmmm |
Ответов: 305
Рейтинг: 4
|
|||
Хорошо работает, спасибо )
|
|||
карма: 0 |
|
Гость
Ответов: 17029
Рейтинг: 0
|
|||
Редактировалось 2 раз(а), последний 2025-01-12 02:01:40 |
|||
карма: 0 |
|
Ответов: 1841
Рейтинг: 369
|
|||
↑↑↑↑↑↑↑↑↑Я был↑↑↑↑↑↑↑↑↑
|
|||
карма: 1 |
|
Ответов: 305
Рейтинг: 4
|
|||
Свыше нужна система балансировки нагрузки. Она сложно делается? ------------ Дoбавленo в 19.58: Есть программы и по 200 держат ------------ Дoбавленo в 20.02: Загрузил почти 3к прокси и 50потоков. Вот: http://forum.d2h.ru/xf/attach/share/33k78.JPG |
|||
карма: 0 |
|
Ответов: 1841
Рейтинг: 369
|
|||
mmmmm писал(а): Она сложно делается?Тут уж всё зависит от Ваших познаний в этой области mmmmm писал(а): 200Ну тут тоже можно 200, но очень много будет пропускать, да и отключать нужно визуальные элементы, дабы не тормозили процесс, в общем оптимизировать. Тут нужно искать "золотую середину" между качеством и скоростью сканирования, анализировать возможную максимальную нагрузку системы, параметры и возможности сети дабы подобрать оптимальное к-во потоков, timeout и тд... ------------ Дoбавленo в 20.38: mmmmm, это всего лишь пример, там нужно парсер принятых данных переделывать (может проскочить тело или неизвестный ответ большого объёма), запрос нужно заменить на:
|
|||
карма: 1 |
|
Ответов: 305
Рейтинг: 4
|
|||
Ага, спасибо
Сейчас буду разбираться |
|||
карма: 0 |
|
Ответов: 1841
Рейтинг: 369
|
|||
mmmmm, вот, доработал немного для прокси...
3360 проксей (копии) и 200 активных модулей (и куча пропущенных проксей ) - ~6% загрузка процессора (2 ядра по 2.8 ггц) multithreads_checker.sha |
|||
карма: 1 |
| ||
файлы: 1 | multithreads_checker.sha [79KB] [104] |
Ответов: 305
Рейтинг: 4
|
|||
CriDos, нажал и закидало ошибками
------------ Дoбавленo в 21.17: 100 норм идет |
|||
карма: 0 |
|