Дмитрий
у игоря все это есть
Дмитрий
все это ок
Дмитрий
именно генерация мне не нравится
Дмитрий
когда у тебя есть миллион записей и более проблемы начинаются
Den 💙💛
Для 15-20 тыс гиг оперативны чёт многовато
Дмитрий
даже 400к гиг оперативы много
Дмитрий
нет, для 400к
Дмитрий
но все равно это много
Den 💙💛
Нужно оптимизировать запросы
Den 💙💛
Ну и разбить на части с офсетом
Дмитрий
просто не в раму складывать, на раму много что завязано
Дмитрий
база данных, если она тут лежит на этом же серваке
Дмитрий
веб серверу может не хватить
Den 💙💛
Ну если ночью генериться карта то на раму можно и не обращать внимание 😃
Дмитрий
есть часовые пояса
Дмитрий
у кого-то ночь, у кого-то день уже
Den 💙💛
база данных, если она тут лежит на этом же серваке
Для базы можно выставить лимиты исходя из общего объема памяти
Igor
Ну если ночью генериться карта то на раму можно и не обращать внимание 😃
Вот и я о том же. Что можно положить. Чем устравиать геморой. Но по правде говоря я просто не придумал как разбить. Тобишь ладно если один цикл один плагин, но тут надо еще внутри каждого плагина.
Дмитрий
ну я считаю это неверным подходом и надо переписать генерацию
Дмитрий
все должно быть максимально отказоустойчивое
Den 💙💛
Может чёт подскажу
Igor
Покажи чтоль о чем речь
О jlsitemap. Там прицип такой каждый плагин отдает ссылки, а потом из них карта уже генерится карта.
Den 💙💛
Ссылку на гитхаб дайте
Igor
все должно быть максимально отказоустойчивое
Вот поэтому я и не парюсь с дроблемнием.
Дмитрий
типа дозапись файлов
Дмитрий
и читать файлы
Дмитрий
и пропускать байты
Дмитрий
лишние и двигаться
Igor
можно просто на файлы переложить
Выходит слишком много если. Тобишь надо под каждый плагин делать файл, и ждать пока каждый из файлов будет success
Den 💙💛
И его уже бить?
Дмитрий
я перепишу логику когда дойдет до этого
Igor
И его уже бить?
Каждый компнент имеет свою структуру и принцип формирования ссылкок.
Дмитрий
сейчас пока все это теории, у меня нет примеров где много страниц
Igor
https://github.com/Joomline/jlsitemap
Дмитрий
Дмитрий
просто в компоненте надо сделать апи сохранения в очередь обработки
Дмитрий
Создать демо через cli и все.
ну да, как вариант, я имел ввиду важности и приоритетности типа
Igor
они тебе отдают фиксированную структуру
Так рама то и жрется именно в процессе получения этой струтуркы.
Дмитрий
читать файлы можно по разному
Igor
Тобишь в момент когда плагины одают ссылки.
Den 💙💛
Каждый компнент имеет свою структуру и принцип формирования ссылкок.
Ну можно на уровне плагина дробить и записывать во временную таблицу данные, а потом все собрать в кучу и разбить на блоки
Дмитрий
ты берешь json весь и сразу
Дмитрий
и не давать жтого делать в плагине, а чтобы было предсказуемо все
Den 💙💛
Даже если это займет час времени на млн записей все равно раз в сутки в фоне без напряга работает
Den 💙💛
нет, нужно общее апи чтобы было компонента
Ну это вопрос к разработчикам 😃
Дмитрий
ну да, тут два варианта
Igor
Ну можно на уровне плагина дробить и записывать во временную таблицу данные, а потом все собрать в кучу и разбить на блоки
Тоже не выход. Ибо когда собирешь в кучу все это опять забьет раму. Плюс придеться каждого разработчика, принуждать делать запросы прямо в плагине. И проблему таймаута это не решит.
Дмитрий
можно на базу перенести и крон который в фоне работате и генерирует
Дмитрий
и просто на файлах с учетом чтения больших данных
Дмитрий
со смещением байтов
Igor
А можно просто не трогать, то что работает =) Лично я за такой вариант.
Дмитрий
крон вешается допустим раз в 30 секунд
Дмитрий
и он сам решает что ему делать
Дмитрий
ну не важно
Дмитрий
запускается типа часто
Дмитрий
и он сам определеяет что ему нужно делать
Den 💙💛
крон вешается допустим раз в 30 секунд
Ну я бы уже тут демон запилил 😃
Дмитрий
ничего, или что-то считать
Igor
Ну у меня вышло ночью обработать блоками с лимит и офсетом. Память не забило
Ну тут тоже 400к итемов съедает гиг ночью, так что меня это мало парит.
Den 💙💛
Ну тут тоже 400к итемов съедает гиг ночью, так что меня это мало парит.
Ну меня парит, так как ночью у меня много что обрабатывает
Igor
Это с учетом того что там не чистый запрос и еще и куча route
Igor
В общем я за принцип не трож то что и так работает.
Den 💙💛
Тут и экскурсии спарсить, и билеты, и туры, и экскурсионные туры, и расписание на сотню городов по перелетам...
Igor
Тут и экскурсии спарсить, и билеты, и туры, и экскурсионные туры, и расписание на сотню городов по перелетам...
Такое я в раму не пихаю. Все в файлах, а сами туры синхронизируются по одному.
Den 💙💛
В общем я за принцип не трож то что и так работает.
И в один прекрасный день, то есть ночь, оно перестанет работать - ляпота 😃
Den 💙💛
Что быстрее отработает
Den 💙💛
Но потом в базу нужно засунуть