Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Оптимизация программ на PHP

Ответить
Настройки темы
Оптимизация программ на PHP

Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83


Конфигурация

Профиль | Сайт | Отправить PM | Цитировать


предлагаю одсудить методы оптимизации прогарамм ны PHP.

так например писать:
Код: Выделить весь код
$a = "a $i a";
не надо!
надо:
Код: Выделить весь код
$a = "a ".$i." a";
рвзультат тот же, но вот скорость в 1,5 раза выше!!!

еще один пример:
Код: Выделить весь код
$a = $a."a";
надо так:
Код: Выделить весь код
$a .= "a";
скорость возрастает в 3 раза!!!

может кто еще какие приемы знает?


Добавлено:

PS
извеняюсь за громатику в названии

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 18:54, 10-05-2004

 

Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Ну например можно ещё так написать:
Код: Выделить весь код
if ($a<6) echo $a;
Вместо
Код: Выделить весь код
if ($a<6)
{
    echo $a;
}
При переводе некоторое время тратится на то, чтобы убрать все ненужные пробелы и переносы

-------
Fortes fortuna adiuvat


Отправлено: 20:37, 10-05-2004 | #2



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

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


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


vadimiron
ты не прав второй вариант быстрее первого примерно на 1-3 процента!
(сам тестил!)

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 21:37, 10-05-2004 | #3


Аватара для Guest

Guest


Профиль | Цитировать


Vlad Drakula

Нам на информатике другое рассказывали, правда там было относительно С++, но думаю разницы нет

А можно вопрос как ты тестишь???

------------------------
vadimiron

[s]Исправлено: Prisoner, 2:43 11-05-2004[/s]

Отправлено: 01:58, 11-05-2004 | #4


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Вероятно каким-либо profiler'ом...
К слову о функциях: как-то давно читал статью о том, что sizeof() и count(). Так последний на больших массивах медленнее первого на ~10-15%.
(Так... не люблю быть голословным, вот эта статья . Тут много еще вкусного).

Vlad, я тебя сильно уважаю, ты не обижайся, но твои посты я без смеха и слез читать не могу . Топик я еще могу поправить, их мало , но будь другом, проверяй перед сабмитом текст, а?

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 03:12, 11-05-2004 | #5


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Вот ещё пару статей:

http://argon.com.ru/internet/webmastering/phpoptim
http://www.listsoft.ru/articles/349/

Есть также разные утилиты для оптимизации, например:
http://apc.communityconnect.com/
Это так называемый APC-Alternative PHP Cache

Также стоит обратить внимание на базу данных и уметь правильно строить запросы, это тоже повысит скорость приложений, для подсчёта времени, которое тратится на запросы, можно почитать в следущей ссылке:
http://www.codenet.ru/webmast/php/sqltime.php

И ещё одно замечание от меня (и для меня ): в больших проектах надо учится управлять распределением памяти, это тоже может повысить скорость

-------
Fortes fortuna adiuvat


Отправлено: 14:02, 11-05-2004 | #6


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Prisoner извеняюсь, буду стараться!

vadimiron
да действительно я ошибся, ты прав!


Добавлено:

vadimiron
спасибо за ссылки, я сейчас все проверю и напишу результаты!

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 20:14, 11-05-2004 | #7


Аватара для Ginger

Рыжая


Сообщения: 1550
Благодарности: 19

Профиль | Сайт | Отправить PM | Цитировать


Vlad Drakula
так чем ты тестишь скорость?

-------
ХР, 2000, NT - BSOD (синие экраны смерти) русский перевод


Отправлено: 21:38, 11-05-2004 | #8


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


Ginger
тестирую самим пхп, т.е. запускаю микротаймер.

а в реальности тестирую с помошью WebStress

но том уже совсем други  скорости и оптимизации...
в среднем производительность у меня 300000-400000 страниц в час!
(на таких обемах очень много инрает даже перерисовка програмь и винамп, в разы!!!)

время генерации около 80-90мс.

когда я создавал эту тему то производительнось была на уровне 220000 тсраниц.

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 22:58, 11-05-2004 | #9


Пользователь


Сообщения: 66
Благодарности: 0

Профиль | Отправить PM | Цитировать


В самам начале было предложено писать
$a .= "a";   вместо   $a=$a."a";
ну тогда аналогично и с
$x+=5;  $y*=3;
ну а про   $i++;  я думаю все знают! (кстати жто тоже на информатике расказывали!)

А на счет тестирования: я так понял Вы программами тестите? А если просто какую либо операцию просто в цикле выполнить много раз и засечь время выполнения, (функция помоему есть, которая до мили секунд время мереет), что-то типа:
......
for($i=1; $i<10000; $i++);{
 $a = "a ".$i." a";}
......
и сравнить с  $a = "a $i a";   Почему бы так не сделать?

-------
Просьба на ошибки внимание не обращать!!!


Отправлено: 16:31, 12-05-2004 | #10



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Оптимизация программ на PHP

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - файлы новых версиий программ не открываются старыми версий программ Glebush Хочу все знать 1 18-08-2009 23:34
C/C++ - [решено] PHP. Fatal error: Function name must be a string in /var/www/index.php on line 15 Artem-Samsung Программирование и базы данных 6 29-11-2008 18:37
Разное - все команды, загрузка программ и работа внутри программ - с задержкой 1/2сек NeuD Microsoft Windows 2000/XP 20 03-07-2008 19:15
[решено] Apache 2.2.8 + Php 5.2.6 + MySQL 5.0.51b (win) - не работает php v0f41k Вебмастеру 4 11-05-2008 22:08
оптимизация include_once на php Vlad Drakula Вебмастеру 2 04-04-2006 20:00




 
Переход