1. Вступайте в наш Telegram чат: https://t.me/a_parser Нас уже 2600+ и мы растем!
    Скрыть объявление

Улучшение [1.1.59] Возможность ограничивать не слоты, а потоки

Тема в разделе "1.1.61", создана пользователем Владислав, 2 июл 2014.

  1. Владислав

    Владислав A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    9 авг 2013
    Сообщения:
    54
    Симпатии:
    0
    Всем доброго времени суток.
    Сейчас в настройках можно задать настройку "выполнять не более N тасков одновременно", благодаря чему работает очередь.
    Есть идея сделать аналог, но в потоках: "выполнять не более N потоков одновременно". Т.е. если на каком-то таске осталось пару долгих потоков из тысячи, то освободившиеся девятьсот потоков можно запустить в соседнем таске и по мере освобождения потоков добавлять лимит.

    Форб, здравая идея?
     
  2. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.337
    Симпатии:
    1.794
    с точки зрения запуска следующего задания в процессе завершения предыдущего - не совсем, т.к. заданию могут понадобиться все потоки(например при многоуровневом парсинге)

    с целью запуска нескольких заданий с разным числом потоков с общим лимитом в N - вполне возможно это будет удобно
     
  3. Рамиль

    Рамиль A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    8 июн 2013
    Сообщения:
    20
    Симпатии:
    3
    Сегодня подумал о такой фиче. Это не просто удобно, а необходимо.
    В частности, сейчас у меня не так много заданий, поэтому я купил всего 20 потоков. Итого, одновременно у меня может выполняться по 3 задания по 6 потоков, + проверка проксей - 2 потока. Но бывает такое, что при старте парсеров забывается поставить нужное кол-во потоков, в результате чего, задания отрабатывают с серьезными глюками (собирается только малая часть данных).

    Нужно сделать настройку, ограничивающую не только кол-во одновременных заданий, но и кол-во одновременных потоков. И, если, очередное задание не укладывается в общий лимит, оно ждет своей очереди.

    Например:
    задание 1 - 5 потоков
    задание 2 - 14 потоков
    задание 3 - 5 потоков

    Лимит 20 потоков.

    Получаем, что работать должны задания 1 и 2, а задание 3 должно ждать очереди.

    Да, и не забыть учесть еще и потоки выделенные для проксичекера.
     
  4. Forbidden

    Forbidden Administrator
    Команда форума A-Parser Enterprise

    Регистрация:
    9 мар 2013
    Сообщения:
    3.337
    Симпатии:
    1.794
    Добавлен общий лимит потоков в глобальных настройках
     
  5. Рамиль

    Рамиль A-Parser Enterprise License
    A-Parser Enterprise

    Регистрация:
    8 июн 2013
    Сообщения:
    20
    Симпатии:
    3

Поделиться этой страницей