Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Запросы - что меньше грузит
Форумы портала PHP.SU » PHP » Программирование на PHP » Запросы - что меньше грузит

Страниц (1): [1]
 

1. Монстр_11111 - 17 Ноября, 2009 - 20:02:00 - перейти к сообщению
Я выношу данные из таблицы юзерс согласно авторизованному иду в массив.И дальше уже пишу что показывать,какой статус и т.д. Это значит 20 значений в массиве. Это вроде много памяти отнимет при большом кол-ве посетителей.

Что грузит сильнее.
(Данные юзера-имя,статус и т.д. анкетное содержание)
1.Выносить каждый раз весь массив из пунктов анкеты
2. Заносить один раз весь итог сессию
3. Перед каждым вынимаемым значением делать определенный порядок запросов чтобы вынимать данные .

// у меня на денвере в среднем генерация всех страниц 0,0147 с . Это много-мало? (и при этом 100 значений в массиве и 3 запроса)
2. JustUserR - 17 Ноября, 2009 - 20:39:11 - перейти к сообщению
Монстр_11111 пишет:
Генерация всех страниц 0,0147 с . Это много-мало?
Более чем хорошо на 3 запроса
Вообще наиболее быстрым будем заносить данные сразу так как на передачу и исполнение запросов требуется время
3. OverNik - 17 Ноября, 2009 - 20:57:25 - перейти к сообщению
А по чему бы не создать сесию где будет хранится вся информация о пользивателе? Делается запрос только один раз - при авторизации, а при повторном посещении сайте уже вся информация выводится с сесии.
4. Монстр_11111 - 17 Ноября, 2009 - 21:06:44 - перейти к сообщению
JustUserR , ну это у меня на компьютере ) а если на денвере) онлайн 20)) человек , то будет в 20 раз больше? ( просто опыта мало поэтому и спрашиваю )
5. valenok - 18 Ноября, 2009 - 08:49:00 - перейти к сообщению
ну будет на в 20 раз больше, будет столько же. Потому что они не все в 1 момент запросы отправили. Я бы хранил в сеессии. Доступ к ней быстрейший.
6. Монстр_11111 - 18 Ноября, 2009 - 13:29:34 - перейти к сообщению
Онлайн 20 находящийся в чате будет обновлять страницу в один момент .
PS Доступ к любым (глоб,не глоб) переменным быстрейший

// Если заносить все в сессию то придется довольно часто обновлять в них данные.

Я просмотрел нагрузку используя большое количество запросов на создание страницы, и понял что 1,2 равномерно . При этом 2 и 3 более геморойны. И не сильно зависит сколько запросов ты в базу делаешь помещая все в переменные, большее значение имеет то сколько раз ты выводишь данные из этого массива.

Вот что сделал я - разделил анкету на две части
1. Часть статистика и важние данные
2. Анкета , и редко используемые (обновляемые) данные .

1 - Занос в массив при каждом обновлении страницы
2 - Занос в сессию каждые полчаса и при каждом заходе.
7. JustUserR - 18 Ноября, 2009 - 17:48:17 - перейти к сообщению
Монстр_11111 Вообще это правильно - проектировать web-приложения надо так чтобы было наименьшее число внешних запросов и обращений - а вся основаная работа велась с обычными переменными
Если вам интересно то можете почитать книгу Дениса Колесниченко - Профессиональное программирование на PHP - там во второй главе изложено достаточно много вопросов и любопытных моментов касающихся оптимизации и скоросит выполнения известных нам функций Улыбка

 

Powered by ExBB FM 1.0 RC1