Медленно грузится - какой вариант выбрать?..

Статус
В этой теме нельзя размещать новые ответы.
Медленно грузится - какой вариант выбрать?..

php-mysql.
Со стороны админа вводятся некоторые цены нетто, проценты накрутки, прочие всякие цифери.
Все сохраняется в БД.
Со стороны клиента открывается страница, в процессе чего берутся цены нетто, добавляются проценты, в общем происходит куча математических операций.
А если еще учесть, что в результате на страницу выводится не один товар/услуга, то страница грузится оооооочень долго.

Я вижу решение только в генерации html в момент ввода цен админом, а клиент загрузит статичную страницу.

Вопрос в том, генерить чистый html иди делать таблицы в БД, где будут сохраняться результирующие данные, которые и будут выводиться клиенту.

Второй вариант мне кажется неправильным, поскольку приведет к созданию кучи дополнительных таблиц в БД.

Или? А может, есть еще варианты?
 
В каком смысле?
Админ ввел данные в январе. А клиент может просматривать в декабре.

Или я не понял.
 

hermit_refined

Отшельник
Со стороны клиента открывается страница, в процессе чего берутся цены нетто, добавляются проценты, в общем происходит куча математических операций.
я очень сомневаюсь, что страница долго грузится из-за математических операций (хотя бывает и такое, за примерами далеко на этом форуме ходить не надо ;-) ).

в любом случае - профайлер вам в руки, возвращайтесь, мы ждем вас с конкретной проблемой.
 
СТраница реально грузится секунд 15, а зачастую и больше.
Цены выводятся "каскадами". Их очень много. И много циклов.
 

hermit_refined

Отшельник
Мне казалось, что эта проблема конкретная.
вы знаете, какие части приложения выполняются столь долго? вы знаете, сколько времени у вас уходит на запросы к бд? сколько на вывод? etc.
из вашего описания следует, что - нет.
скрипт тормозит - это не проблема.
проблема - когда вы знаете, что именно и почему тормозит.
 
Запросы к БД не в счет. Мизер.
Далее в циклах к нетто-ценам добавляются проценты.
К основным ценам добавляются цены на дополнительные услуги, к которым в свою очередь добавляются процены.
И это все по каждому периоду, которых тоже очень много.

Основные потери идут в циклах вкупе с мат. операциями.
 
Это даже измерять не имеет смысла.
Некоторые страницы, где услуга одна, все нормально.
Чем больше на странице услуг, пропорционально растет и время загрузки.
Разбить на разные страницы нельзя - как данное должно выглядеть так, как есть.
Каждая услуга - это таблица на странице.
А каждая цифра в таблице на странице подвергается многократной обработке.

Я благодарен за ответы. Но скажите, вариант генерации html вообще не рассматривается?

Для меня важно. Потому что прежде чем все переделывать, хотелось бы знать, что иду в том направлении.
 

Фанат

oncle terrible
Команда форума
Не собираюсь я ничего открывать.
Ты мжешь дать логическое объяснение этим 10 тыщам на одну цифру?

-~{}~ 15.03.07 23:50:

писец. уже второй такой в этом песяце. весна
 
Именно писец. По-моему, легче было щелкнуть по ссылке, чем фразу писать, а потом еще и редактировать. Логическое объяснение сразу понял бы.

Объяснение:
Надо вывести цены на туры на все лето по 20 (к примеру) отелям на 7 и 14 дней. Заезды по определенным дням.
У каждого отеля свои периоды смены цен. Все суточные цены нетто по каждому отелю введены в БД.

Я не могу взять цену на отель с субботы (скажем) по субботу и умножить на 7 один раз. Потому что у него, скорее всего, цена в четверг меняется. А у другого отеля она меняется в понедельник.

Потому я в цикле прохожу каждый день по каждому отелю, перемножая это все на коэффициенты накруток, чтобы отследить момент изменения цены. А потом еще и доп услуги (перелет, трансфер и пр.) добавляю со своими коэффициентами.

Но я уже знаю, какой ответ получу. Потому особо не расстраиваюсь.

Вопрос был не в этом. Вопрос был следующий:
Корректно ли генерить html страницу или нет. Все тут.
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Эдуард, как сделать сайт быстрее - это интересный вопрос,
а "как мне доказать себе, что моё решение правильное, и жить дальше без напряга" - это нам не интересно
 

Bu-Bu

Любитель PHP
Автор оригинала: Эдуард
Именно писец. По-моему, легче было щелкнуть по ссылке, чем фразу писать, а потом еще и редактировать. Логическое объяснение сразу понял бы.

Объяснение:
Надо вывести цены на туры на все лето по 20 (к примеру) отелям на 7 и 14 дней. Заезды по определенным дням.
У каждого отеля свои периоды смены цен. Все суточные цены нетто по каждому отелю введены в БД.

Я не могу взять цену на отель с субботы (скажем) по субботу и умножить на 7 один раз. Потому что у него, скорее всего, цена в четверг меняется. А у другого отеля она меняется в понедельник.

Потому я в цикле прохожу каждый день по каждому отелю, перемножая это все на коэффициенты накруток, чтобы отследить момент изменения цены. А потом еще и доп услуги (перелет, трансфер и пр.) добавляю со своими коэффициентами.

Но я уже знаю, какой ответ получу. Потому особо не расстраиваюсь.

Вопрос был не в этом. Вопрос был следующий:
Корректно ли генерить html страницу или нет. Все тут.
Если в лом ковыряться в коде, то может просто делать кеши html и хранить их сутки, хоть какой-то выигрыш во времени загрузки будет. А вообще, с циклами иногда происходят смешные вещи, когда посидишь-подумаешь... и выкинешь нафиг больше половины кода, а результат скрипта остается тот же.
 
Автор оригинала: grigori
Эдуард, как сделать сайт быстрее - это интересный вопрос,
а "как мне доказать себе, что моё решение правильное, и жить дальше без напряга" - это нам не интересно
Вот джигит. Тебе не интересно.

Какого ... пишешь? Или это здесь не форум, где одни спрашивают, а другие отвечают?
Ладно. Следующий пост будет такой, чтобы тебе интересно стало.

А больше всего понравилось словао НАМ.

-~{}~ 16.03.07 19:37:

Автор оригинала: Bu-Bu
Если в лом ковыряться в коде, то может просто делать кеши html и хранить их сутки, хоть какой-то выигрыш во времени загрузки будет. А вообще, с циклами иногда происходят смешные вещи, когда посидишь-подумаешь... и выкинешь нафиг больше половины кода, а результат скрипта остается тот же.
Не получится, к сожалению, кэш хранить. Поскольку админ в любой момент изменить данные может.
А насчет циклов согласен. Есть суббота и воскресенье. Профильтрую...
 

hermit_refined

Отшельник
Эдуард
короче, если вы точно знаете, что проблема у вас в обсчете - значит, разбирайтесь с обсчетом.
потому как 15 секунд математических операций могут свидетельствовать лишь об удивительной кривизне.
а кеширование не для её прикрытия предназначено.

и ещё раз: сначала меряете профайлером, определяете узкие места, потом думаете и оптимизируете.
 
Автор оригинала: hermit_refined
Эдуард
короче, если вы точно знаете, что проблема у вас в обсчете - значит, разбирайтесь с обсчетом.
потому как 15 секунд математических операций могут свидетельствовать лишь об удивительной кривизне.
а кеширование не для её прикрытия предназначено.

и ещё раз: сначала меряете профайлером, определяете узкие места, потом думаете и оптимизируете.
Завтра с утра буду проверять кривизну. На 70% ее найду. Но поймите, ведь вопрос был не о том...
Ну будет страница грузиться не 15 секунд а 12,5. Это ведь не решение.
Не решение и кеширование. Потому что админ в любой момент данные изменить может.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху