![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| anurbol |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 30.5.2007 Где: Алматы, Казахстан Репутация: нет Всего: нет |
В общем влияет ли количество объявленных переменных, массивов, объектов, на производительность, на время отдачи контента и т.д. ? Недавно в своем движке вывел get_defined_vars и обалдел, страница больше мегабайта получилась. С одной стороны это очень удобно, раз переменные объявлены в главном файле, всегда можно обратиться к ним сразу где бы то ни было, но... влияет ли это как то на быстродействие сайта???
|
|||
|
||||
| bars80080 |
|
||||
![]() прапор творюет ![]() ![]() ![]() ![]() Награды: 1 Профиль Группа: Завсегдатай Сообщений: 12022 Регистрация: 5.12.2007 Где: Königsberg Репутация: 71 Всего: 315 |
однозначно да. насколько сильно? в общем случае очень слабо. хотя бывают случаи, когда туда-сюда таскают гигантские объёмы данных, да ещё и непрестанно копируют их
вот следовало бы очень хорошо подумать над эти "очень удобно". насколько часто у тебя требуется из конца кода обратиться к переменной объявленной в начале? обычно тянется всего небольшая группа данных, составляющих страницы. а вот всё остальное? |
||||
|
|||||
| anurbol |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 30.5.2007 Где: Алматы, Казахстан Репутация: нет Всего: нет |
Очень удобно! Альтернатива как я понимаю - в каждом отдельном файле инклюдить только то, что нужно. но так как система уже настолько навороченная, это такая ж*па, и собственно хочется спросить стоит ли овчинка выделки? |
|||
|
||||
| IgorIV |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 642 Регистрация: 7.9.2009 Репутация: 2 Всего: 8 |
||||
|
||||
| LeoK |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 14.12.2007 Где: Moscow Репутация: нет Всего: нет |
видимо у вас много переменных, объявленных в globals... имхо это зло Данные нужно генерировать в соответствии с контекстом и не таскать за собой кучу ненужного на данный момент |
|||
|
||||
| MoLeX |
|
||||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
Ээ, от куда такой вывод??? Плохо спроектировано у вас. Необходимо посмотреть от каких переменных можно избавиться. Может есть специфические, которые нужны только для отображения формы обратной связи. А вы их вынесли в главный файл.
-------------------- Amazing |
||||
|
|||||
| LeoK |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 14.12.2007 Где: Moscow Репутация: нет Всего: нет |
||||
|
||||
| nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 12 Всего: 43 |
Не влияет.
На производительность влияют СУБД, косяки в алгоритмах, отсутствие кеширования, тормоза ФС, тормоза сети, кривая настройка сервера, отдача статики неасинхронным сервером и хреновое железо. Остальные факторы много меньше погрешности и не имеют значения. |
|||
|
||||
| nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 12 Всего: 43 |
|
|||
|
||||
| krundetz |
|
|||
![]() Вечный странник ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
посмотрите в сторону заложенной в php возможности автоматически подключать нужные файлы используя функцию __autoload() в какой то степени она позволит избавиться от: при переделки системы. ещё бывает такая вещь как ограничение размера оперативной памяти, вот тогда размер памяти необходимой при выполнение скрипта имеет большое значение, просто сейчас легче купить у хостинга тариф с большим размером выделяемой оперативной памяти Это сообщение отредактировал(а) krundetz - 19.4.2010, 08:47 |
|||
|
||||
| anurbol |
|
||||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 30.5.2007 Где: Алматы, Казахстан Репутация: нет Всего: нет |
Такой ответ я и хотел услышать Спасибо nerezus ))) насчет проектирования -
А кстати 0.2 это много?? это если учесть что 0.2 сек. это на 2-ядерном локалхосте-денвере с 2 ГБ озу. Да специфических очень мало, в основном такие штуки как инфо о текущем пользователе, его курсе валют, его настройках, его друзьях, рейтинге, балансе и т.д. MoLex, и Вам спасибо, давно уважаю Вас! Это сообщение отредактировал(а) anurbol - 21.4.2010, 05:06 |
||||||
|
|||||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
денвер? под виндовс? тогда не много -------------------- Amazing |
|||
|
||||
| nerezus |
|
|||
![]() Вселенский отказник ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3330 Регистрация: 15.6.2005 Репутация: 12 Всего: 43 |
anurbol, в любом случае сведи количество общеглорбальных переменных к 0.
|
|||
|
||||
| lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: 3 Всего: 15 |
Я думаю на скорость это не влияет абсолютно, потому что один фиг - хеш таблицы (не те что в языке, а те что внутри реализации языка) настолько быстрые, что там хоть миллион переменных будет, все равно поиск будет мгновенный вне зависимости от кол-ва элементов. Это конечно не говорит о том, что большое количество глобальных переменных это хорошо, надо объединять их в массивы, создавать объекты и т.п.
Хех, не заметил дату поста. Форум по пхп умер? Это сообщение отредактировал(а) lukas - 20.9.2010, 22:23 -------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
| MoLeX |
|
|||
![]() Местный пингвин ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4076 Регистрация: 17.5.2007 Репутация: 46 Всего: 140 |
-------------------- Amazing |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |