Kami Posted August 15, 2023 Report Share Posted August 15, 2023 Скажите, кто как разбивал yandex.xml на части? товаров 20 тыс и фид уже не загружается, падает сервер. Кто как выходил из этой проблемы? Quote Link to post Share on other sites
simpla24 Posted August 16, 2023 Report Share Posted August 16, 2023 Все очень просто. Постараться выжать из сервера максимальное время выполнения скрипта. Будет главный файл yandex.xml, где будут ссылки на на 5-10 файлов yandex_n.xml. Нужно первым делом получить количество товаров, максимальное количество товаров в файле, после чего уже рассчитать количество файлов и дальше заниматься наполнением этих файлов. Quote Link to post Share on other sites
phukortsin Posted August 16, 2023 Report Share Posted August 16, 2023 Пример такого действа можно найти в OkayCMS... Quote Link to post Share on other sites
shooroop Posted August 16, 2023 Report Share Posted August 16, 2023 6 часов назад, simpla24 сказал: Все очень просто. Постараться выжать из сервера максимальное время выполнения скрипта. Будет главный файл yandex.xml, где будут ссылки на на 5-10 файлов yandex_n.xml. Нужно первым делом получить количество товаров, максимальное количество товаров в файле, после чего уже рассчитать количество файлов и дальше заниматься наполнением этих файлов. ненадо такого городить ) есть способы проще Quote Link to post Share on other sites
sergeevizh Posted August 16, 2023 Report Share Posted August 16, 2023 24 минуты назад, shooroop сказал: ненадо такого городить ) есть способы проще и этот способ... продолжите пожалуйста Quote Link to post Share on other sites
shooroop Posted August 17, 2023 Report Share Posted August 17, 2023 В 16.08.2023 в 15:54, alexivchenko сказал: и этот способ... продолжите пожалуйста LIMIT Quote Link to post Share on other sites
phukortsin Posted August 18, 2023 Report Share Posted August 18, 2023 В 16.08.2023 в 01:28, Kami сказал: Скажите, кто как разбивал yandex.xml на части? товаров 20 тыс и фид уже не загружается, падает сервер. Кто как выходил из этой проблемы? Такой проблемы у большинства типовых сайтов НЕТ. При 20 тыс обычно товаров фид формируется легко и быстро. Если у Вас не работает, то это, скорее всего, проблема слабого сервера. Если нет желания/возможности перейти на лучший тарифный план, то работать надо индивидуально. Сначала выяснять причину (основные варианты - не хватает ресурсов MySQL или не хватает оперативной памяти сервера). А потом уже придумывать хитрости, чтобы обойти нехватку ресурсов... Например, если причина затыка в нехватке ресурсов MySQL, то можно выходить из положения, как намекнул shooroop - делать подряд несколько запросов с ограничением, например, по 4000 записей... Quote Link to post Share on other sites
Kami Posted August 22, 2023 Author Report Share Posted August 22, 2023 В 18.08.2023 в 08:50, phukortsin сказал: Такой проблемы у большинства типовых сайтов НЕТ. При 20 тыс обычно товаров фид формируется легко и быстро. Если у Вас не работает, то это, скорее всего, проблема слабого сервера. Если нет желания/возможности перейти на лучший тарифный план, то работать надо индивидуально. Сначала выяснять причину (основные варианты - не хватает ресурсов MySQL или не хватает оперативной памяти сервера). А потом уже придумывать хитрости, чтобы обойти нехватку ресурсов... Например, если причина затыка в нехватке ресурсов MySQL, то можно выходить из положения, как намекнул shooroop - делать подряд несколько запросов с ограничением, например, по 4000 записей... Вообще в логах странная ошибка. 2023/08/22 05:36:52 [error] 145577#145577: *2 upstream timed out (110: Connection timed out) while reading response header from upstream, Сервер ложится с ошибкой 504 Gateway Time-out Сам сервер выделенный и с хорошим железом, стоит fast panel Quote Link to post Share on other sites
phukortsin Posted August 22, 2023 Report Share Posted August 22, 2023 https://bogachev.biz/2015/04/02/ispravlenie-oshibki-upstream-timed-out-110-connection-timed-out/ Quote Link to post Share on other sites
Kami Posted August 22, 2023 Author Report Share Posted August 22, 2023 11 минут назад, phukortsin сказал: https://bogachev.biz/2015/04/02/ispravlenie-oshibki-upstream-timed-out-110-connection-timed-out/ В этом и соль что уже все прописал location / { proxy_pass http://127.0.0.1:81; proxy_redirect http://127.0.0.1:81/ /; include /etc/nginx/proxy_params; fastcgi_read_timeout 300; fastcgi_send_timeout 300; proxy_read_timeout 300; } И сервер перезагружал, всё равно - 1 минуту выполняет и уходит в 504 ошибку. Quote Link to post Share on other sites
phukortsin Posted August 23, 2023 Report Share Posted August 23, 2023 Значит, не хватает серверу ресурсов. В 18.08.2023 в 08:50, phukortsin сказал: Сначала выяснять причину (основные варианты - не хватает ресурсов MySQL или не хватает оперативной памяти сервера). А потом уже придумывать хитрости, чтобы обойти нехватку ресурсов... Quote Link to post Share on other sites
Kami Posted September 3, 2023 Author Report Share Posted September 3, 2023 В 23.08.2023 в 08:14, phukortsin сказал: Значит, не хватает серверу ресурсов. Ну вот проблема ресурсов решена, а вот всё равно фид грузится 5 минут ти ложится с ошибкой. То есть даже 5 минут не хватает чтоб выполнить запрос к 20 к товарам со свойствами т.д. Как вы выходили из ситуации? пилить фид? Quote Link to post Share on other sites
Kami Posted September 3, 2023 Author Report Share Posted September 3, 2023 В 17.08.2023 в 21:29, shooroop сказал: LIMIT Лимитом я же просто ограничу выборку с базы данных, а мне то нужно всё выгрузить. Quote Link to post Share on other sites
sergeevizh Posted September 3, 2023 Report Share Posted September 3, 2023 1 час назад, Kami сказал: Ну вот проблема ресурсов решена, а вот всё равно фид грузится 5 минут ти ложится с ошибкой. То есть даже 5 минут не хватает чтоб выполнить запрос к 20 к товарам со свойствами т.д. Как вы выходили из ситуации? пилить фид? Сделайте выгрузку товаров экспорт в csv, так же долго формирует файл? Quote Link to post Share on other sites
phukortsin Posted September 4, 2023 Report Share Posted September 4, 2023 10 часов назад, Kami сказал: Ну вот проблема ресурсов решена, а вот всё равно фид грузится 5 минут ти ложится с ошибкой. То есть даже 5 минут не хватает чтоб выполнить запрос к 20 к товарам со свойствами т.д. Если не может обработать легкий запрос, видимо, проблема не решена. Еще можно попробовать для ОДНОГО товара. 10 часов назад, Kami сказал: Как вы выходили из ситуации? пилить фид? Уже говорилось: В 18.08.2023 в 08:50, phukortsin сказал: Сначала выяснять причину (основные варианты - не хватает ресурсов MySQL или не хватает оперативной памяти сервера). А потом уже придумывать хитрости, чтобы обойти нехватку ресурсов... Например, если причина затыка в нехватке ресурсов MySQL, то можно выходить из положения, как намекнул shooroop - делать подряд несколько запросов с ограничением, например, по 4000 записей... А еще бывает такое в случае нерациональной доработки. Например, если много свойств, и их значения по одному извлекаются в цикле. А поскольку у Вас все в секрете, и в общем и целом, то гадать можно долго... Quote Link to post Share on other sites
shooroop Posted September 4, 2023 Report Share Posted September 4, 2023 21 час назад, Kami сказал: Лимитом я же просто ограничу выборку с базы данных, а мне то нужно всё выгрузить. Не только а делить запрос в 20к товаров например по 1к Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.