Перейти к публикации

Ускорение PHP-программ


Рекомендованные сообщения

Вот нашёл такую информацию в интернете... и судя по ней разработчики скрипта Datalife-Engine совсем не в курсе различных мелочей для оптимизации php-кода!

- Выносите переменные из строк. Примерно так: <?php $x=”test”.$test; ?> , это на 25-40% быстрее.

- Имена переменных должны быть короче 7 символов. Это быстрее на 15%.

- В массивах не стоит обращаться к элементам по имени и без кавычек. Особенно в многомерных. Сэкономите 40%.

- А если обращение к элементу массива вынести из строки (как в пункте 1), то можно сэкономить ещё 25-30%.

- Используйте Perl-ориентированные регулярные выражения. Или хотя бы сравнивайте их с POSIX-аналогами по скорости выполнения. Скорость может отличаться до 200% на разных запросах.

- SizeOf() быстрее Count(), а в циклах sizeof лучше вообще заменить на переменную, for и while практически не отличимы, для перебора простых индексных массивов нужно использовать for или while, а для ассоциативных массивов - foreach. Плюс 30% при соблюдении.

- Для чтения файла file() быстрее, чем fopen()+цикл. Ускорение до 40%.

Посмотреть подтверждение всех рекомендаций можно вот здеся :)

Надеюсь, администрация внемлет моему доброму порыву, оптимизирует PHP-код скрипта, увидет, как все клиенты обрадуются и отблагодарит меня :D )))

Изменено пользователем Yo_man
Ссылка на сообщение
Поделиться на других сайтах

Yo_man,

Старо как мир и абсолютно не актуально для DLE

Прирост скорости получен при 10 000 прогоне кода в цикле. DLE не использует в работе сложные операции с кодом.

Поэтому если строчка

$x=”test”.$test;
выполняется за 0.00000001 секунду и если я для собственного удобства поставил
$x="{$test}";

это я не получу даже тысячной доли секунды прироста производительности, по одной причине: этот код не исполняется 10 000 раз. А какие функции PHP работают быстрее, а какие медленнее мне это известно гораздо лучше вас.

Ссылка на сообщение
Поделиться на других сайтах

Ну к примеру это у вас совершенно не соблюдено ;) а пишут, что аж на 15% оптимизирует код!

- Имена переменных должны быть короче 7 символов. Это быстрее на 15%.
Ссылка на сообщение
Поделиться на других сайтах

Если оптимизировать DLE - то микросекунды выигранные таким образом, не перекроют удобство чтения)

А вот если писать на php скрипт моделирования движения облаков над северным полушарием земли - то +-15 минут будут существенными)

Ссылка на сообщение
Поделиться на других сайтах

Если оптимизировать DLE - то микросекунды выигранные таким образом, не перекроют удобство чтения)

А вот если писать на php скрипт моделирования движения облаков над северным полушарием земли - то +-15 минут будут существенными)

Н-да поржал !! :D

А вообще если поставить двиг на хороший хост, то летает не хуже гугля. Кроме того если человек умудрился написать такой двиг, то такая инфа для него - прошлогодний снег.

Ссылка на сообщение
Поделиться на других сайтах

...а мы восприняли с интузиазмом и весело поржали. А завтра еще один такой Человек появится и скажет: "А вы знаете что .ASP работает на 60% быстрее PHP ну-ка примите к сведению и перепишите двиг." Это ирония - не обижайтесь. ;)

Ссылка на сообщение
Поделиться на других сайтах

Ты знаешь а почему бы и нет, только не на асп, а на перл :P Было не плохо, тогда я бы начал учить и перл :)

Ссылка на сообщение
Поделиться на других сайтах

...а мы восприняли с интузиазмом и весело поржали. А завтра еще один такой Человек появится и скажет: "А вы знаете что .ASP работает на 60% быстрее PHP ну-ка примите к сведению и перепишите двиг." Это ирония - не обижайтесь.

кстати не плохая идея что по этому поводу думает celsoft :)

не все же сидят на апаче а для ISS сервера ASP родной нежели пхп

Ссылка на сообщение
Поделиться на других сайтах

"не все же сидят на апаче а для ISS сервера ASP родной нежели пхп"

))) В твоём вопросе содержится ответ) Не стоят усилия радости той малой части людей, которым лень поставить PHP на ISS)))

Ссылка на сообщение
Поделиться на других сайтах

))) В твоём вопросе содержится ответ) Не стоят усилия радости той малой части людей, которым лень поставить PHP на ISS)))

Я по моему и не говорил что лень.Он и стоит. Но родная среда под Win сервером ASP, так как уже встроено в ядро сервера в отличии от PHP, да и вообще php интерпретатор, а ASP.Net - компилятор

И не так уж и мало людей сидит под IIS по крайней мере не в россиии. Да и всё зависит от того под какие нужды нужен сервер.

PS Вообще, php разрабатывался для страниц вида "Привет! Меня зовут Вася. Это моя первая страница!". Конечно, с тех пор он развился немеренно, но лидирует он в области небольших проектов

Изменено пользователем veprj
Ссылка на сообщение
Поделиться на других сайтах

Ты знаешь а почему бы и нет, только не на асп, а на перл :P Было не плохо, тогда я бы начал учить и перл :)

Вот теперь и я поржал, на perl??? ндааа..... и какие мощности тогда нужны будут под сайт с посещаемостью в 20000 в день? :blink:

Я даже боюсь предположить....

Ссылка на сообщение
Поделиться на других сайтах

И не так уж и мало людей сидит под IIS по крайней мере не в россиии. Да и всё зависит от того под какие нужды нужен сервер.

да да, IIS и я пользуюсь

Конечно, с тех пор он развился немеренно, но лидирует он в области небольших проектов

На каком же языке написаны большие проекты?
Ссылка на сообщение
Поделиться на других сайтах

По мне так в крупных проектах лидирует языки выского уровня(СИ и ему подобные) Какой смысл использовать какие-либо интерпритаторы, или сторонние компиляторы, когда можно сделать ядро, хоть на том-же ассемблере! И это будет практически максимальной скоростью(если уметь программировать).... Так что ASP и PHP, как-раз используются только для небольших проектов))) Либо-же для обработки результатов запросов к ядру) а тут уже от личных предпочтений зависит)

Изменено пользователем BlackMaster
Ссылка на сообщение
Поделиться на других сайтах

Вот теперь и я поржал, на perl??? ндааа..... и какие мощности тогда нужны будут под сайт с посещаемостью в 20000 в день? :blink:

Я даже боюсь предположить....

Чуть поменьше чем на php, в ДЛЕ основной тормоз база данных. А так, perl класная штука, пару раз приходилось обработать словарь в несколько милионов слов - php за сутки не справился, perl минут 20 ковырял - быстродействие на лицо!

Ссылка на сообщение
Поделиться на других сайтах

Вот теперь и я поржал, на perl??? ндааа..... и какие мощности тогда нужны будут под сайт с посещаемостью в 20000 в день? :blink:

Я даже боюсь предположить....

Чуть поменьше чем на php, в ДЛЕ основной тормоз база данных. А так, perl класная штука, пару раз приходилось обработать словарь в несколько милионов слов - php за сутки не справился, perl минут 20 ковырял - быстродействие на лицо!

угу, как текстовый процессор perl работает на ура, но не забывай, это обработка текстовой базы при одном обращении, а что будет если обращений будет 1000 или 20000 ??? умрёт сразу.

Ссылка на сообщение
Поделиться на других сайтах

угу, как текстовый процессор perl работает на ура, но не забывай, это обработка текстовой базы при одном обращении, а что будет если обращений будет 1000 или 20000 ??? умрёт сразу.

php умирает на много скорей, и переносимость большого количества запросов perla на более высоком уровне (в разы, если не порядки), но, повторюсь, в ДЛЕ ключевую роль играет база данных. Не припомню случая что-бы хоть один холстер жаловался на то что ДЛЕ давит на апач, а жалоб на мускул достаточно.

Nitro, где ты уже нарыл о таких недостатках перла? При установленом fast_cgi у php не остается ни одного преимужества, ну кроме простоты програмирования.

Ссылка на сообщение
Поделиться на других сайтах

При установленом fast_cgi у php не остается ни одного преимужества, ну кроме простоты програмирования.

это не рытьё инфы, это опыт работы.

Тоже самое я тебе могу сказать про php, а вообще эта тема создана не для сравнения perl или php, смысла в этой теме я вообще не вижу.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...