@Fox Привет.Я описывал задачу в этой теме https://community.bablosoft.com/topic/27417/вызов-многопоточной-функции
Дело в том,что я не могу вообще никак перевести свой скрипт на многопоток,у меня тупо,что в вызове функции в многопоток,что просто обычный многопоток,выполняет свою работу с данными по очереди,а не одновременно.И это очень сильно бьет по времени,а нужна именно скорость обработки.Все уже готово и скрипт рабочий полностью,но скорость обработки заставила воспользоваться многопотоком.Ранее,подобных проблем не замечал,а сейчас элементарную задачу не могу уже несколько дней решить.
Скрипт очень простой и работает без браузера вообще,в скрипте используется только одно взаимодействие с гет запросом.Пример скрипта я приложил в этой теме(но без запросов),он точно почти такой же,как и основа.
Логика такова:
1)Запускается скрипт (без всяких ресурсов изначально и данных) и создаются два ресурса.
2)Делается запрос на сайт,который обрабатывается в отдельной функции,т.е. обрабатывает полученные строки и записывает в ресурс.
3)Вызывается функция в несколько потоков,которая работает (должна работать) с каждой строкой из созданного ранее ресурса(уникальной)в отдельном потоке.Данные обрабатываются и записываются во второй ранее созданный ресурс.
4)Как только данные обработаны,ресурс переводится в список и список записывается в файл.Более ничего не делается.
-Сперва я думал,что проблема в создаваемых в ходе работы ресурсах,но нет.Создавал изначально ресурсы и то же самое было.
-Потом пробовал брать из файлов значения\потом создавать файлы по ходу и из них брать данные\сохранять напрямую пытался и.т.д
-Возможно думал стоят какие то ограничения из за слабого пк с 4 гб оперативы и взял сервер с 64 гб,но как обрабатывалась строка за 5 минут на моем пк,так же по скорости и на серваке.Ладно, с этим я уже ничего не поделаю из за регулярок в проекте,согласен.Но вот перевести на поток и хотя бы по 10 строк одновременно обрабатывать,очень бы помогло.А сейчас в любом случае,у меня,сколько бы потоков не выставил - работает все равно как один,просто по очереди разный поток берет свои данные(
Помощь с MySql в БАС
-
Всем добрый вечер, подскажите если кому то не трудно :)
Возможно ли как то через Бас отправлять запрос в БД MySQL что бы проверяло сразу целый список значений на наличие в базе?
Например в базе данных такие значения: 1,2,3,4,5,6 я хочу проверить за одно действие список со значениями 2,3,4,10,12 что б у меня остались 10 и 12 -
Дело в том, что мне нужно получить (а точнее оставить) в списке значения, которых нет в базе данных.
Тоесть в базе миллион строчек с определёнными словами, в БАС у меня есть список со словами из тысячи строк.
Хочу оставить в списке только те слова, которых нет в базе данных, остальные убрать. -
@super84 ну я впринципе сейчас так и делаю) работаю с текстовыми файлами и списками, но когда там набирается по миллиону строчек они очень сильно нагружают оперативную память.
Поэтому и ищу решение при помощи БД. И очень важный момент который я пытался узнать, возможно ли за ОДИН запрос убрать из списка значения которые есть в БД, а не перебирать каждый элемент) В чате по БАС мне сказали, что это возможно, но не сказали как ) -
@Encoder95 Я с Базой не Работаю ( нет пока нужды в этом ) а тут на Форуме по Базе тож много Инфы, наберите в Поиске Форума просто База и по любой ответ должен быть.
Я всё Читаю и тож Сколь Тем Видел и об Весе Базы сколь раз и тп и тд.
Через Файл у меня тож норм Работает и Читает, а вот там чёт мутки какие то ( опять же тут видел и пока и без неё ништяк ).
Мне тут вот ответили,по Фингеру, как с Файла мол Удалить не те Отпечатки и тож вот Предложили создать Базу и Там Фильтровать.
Нах я уже Скрипт для этого не большой Сделал и он Чекает на МОб и Веб и просто удаляет Строки с не нужными отпечатками :
Костыль так сказать.мы же тож Ваяем кто как и у одного так робит а у другого не так, в зависимости от Задачи :) -
@Encoder95
И очень важный момент который я пытался узнать, возможно ли за ОДИН запрос убрать из списка значения которые есть в БД, а не перебирать каждый элемент) В чате по БАС мне сказали, что это возможно, но не сказали как )Думаю без перебора не обойтись.
-
@Encoder95 такого рода вопросы(составить за тебя sql) лучше задавать на киберфорум, qna.habr.com и тому подобных ресурсах.
там под mysql и sql отдельные разделы идут.БАС у меня есть список со словами из тысячи строк.
Хочу оставить в списке только те слова, которых нет в базе данных, остальные убрать.можно генерировать sql
Select * from table where id in (1,2,3,4,5,6 )
где
(1,2,3,4,5,6 )генерировать циклом.
только надо наверно учесть на возможное ограничение длины sql.при таких высоких запросах на это значение в бд нужно на этот столбик настроить индексацию
image url)