Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
Страшные сказки про PHP5, рассказанные на ночь… |

15.01.2009, 08:36
|
|
Познающий
Регистрация: 26.10.2007
Сообщений: 83
Провел на форуме: 394231
Репутация:
50
|
|
Страшные сказки про PHP5, рассказанные на ночь…
*статья не моя (внизу коперы)... просто понравилось как изложено (полезно почитать *оптимизаторам)
1) Какой бы ерундой вы не занимались с PHP, узкое место _всегда_ - БД. PHP - он как Буратино - тупОЙКАк... дрова. Lighttpd и Nginx позволяют разнести его по множеству физических серверов на раз без шума и пыли. Зарплата адекватного спеца по PHP в Москве - 30-45 тыс. рублей в месяц, стоимость аренды нормального сервера - от 3 тыс. рублей в месяц. А вы не знали  ?
2) Какой бы ерундой вы не занимались - 30-60% производительности (возможно и больше) PHP-кода решит правильно выбранный и настроенный акселератор.
3) Серебряной пули нет. Не важно, какой концепт вы применяете - строгое ООП (в стиле Zend Framework), функции в стиле PHP4 (или ограниченное ООП) или вообще лапшу в стиле "PHP для чайников" - ни одна из этих парадигм не даст ощутимый прирост производительности, если конечно ваши программисты не выше как минимум на голову.
4) Самый быстрый код - это код, которого нет. И уж точно - когда нет запросов к БД (см. п.1). Так что кеширование - это безусловно то, с чего начинается высокая производительность. Смело забивайте на _любую_ оптимизацию, пока есть возможность что-то закешировать. Закешировать можно все. Вопрос лишь в том, как посылать уведомления о необходимости обновить определенные части кеша. (Возможно кто-то помнит баги сайта free-lance.ru, когда в разных местах одни и те же цифры были разными, из-за чего было много недоразумений. Это позор.) И как правило, чем выше уровень абстракции, тем меньше производительность кода, и тем больше возможность кеширования при тех же затратах человеко-часов. И в итоге на более высокой абстракции можно выжать большую конечную производительность за счет кеширования. Но это уже кто как умеет  (см. п. 3).
5) Если вы считаете, что echo быстрее print - вы неудачник. В современных MVC-проектах как правило подобные фичи вызываются как максимум три раза: во front-контроллере, в AJAX-контроллере и в RSS-контроллере - то есть максимум три оператора вывода в стандартный поток на весь ваш большущий проект.
6) Если вы молитесь на Front-контроллер Zend Framework - это ваше право. Но его концепт "/key/value/" считают революционным люди, не видевшие ничего кроме ?key=value&foo=bar, но кто-то заюзал концепт /virtdir1/virtdir2/virtfile/, используя грязные хаки ERROR 404, задолого до повсеместного появления на виртхостингах (и очень задолго до появления VDS) mod_rewrite (и PHP5  . Конечно, фронт-конроллер ZF очень гибкий, но не легче ли написать свой? Все вышенаписанное справедливо только для больших проектов, если вы пишете много маленьких - это не для вас (заюзайте стандартный Front Controller ZF и сосредоточтесь на легкости поддержки).
7)
echo "preved $foo $bar";
echo 'preved ' . $foo . ' ' . $bar;
echo 'preved ', $foo, ' ', $bar;
sprintf('preved %1$s %2$s', $foo, $bar);
Вы, как матерый профессионал хайлоада можете с закрытыми глазами сказать, какая конструкция быстрее? Расслабьте анус, батенька - вы неудачник.
Вы можете точно и аргументированно сказать, какую концепцию выбрать в качестве стандартной в рамках большого проекта - респект.
8) Забудьте и навсегда пошлите в глубокий анус виртуальные хостинги, как ваш самый страшный сон. Идите и купите себе виртуальный выделенный сервер с правами root за >=150 рублей в месяц. И поставьте туда ваш любимый Debian/Gentoo/FreeBSD, и управляйте им как Root Всемогущий! Отныне вы свободны!
9) Если на вашей рабочей машине PHP работает под Windows - вы нюхаете цветы в противогазе. Если вы хотите стать профессиональным серверным программистом под *nix - смело сносите Windows и ставьте *nix (Linux, FreeBSD, OpenSolaris, etc...) Если такой цели нет - можете запускать *nix-сервер в виртуальной машине (Virtual Box, VMvare, etc...), но пожалуйста, не мучайте PHP - не гоняйте его под Windows...
10) Если на вашей рабочей машине PHP работает без акселератора - вы нюхаете цветы в противогазе, надетом на респератор, а поверх этих гламурных шмоточек на вас еще надет... ТАНК! Установите уже акселератор, черт возьми! (upd: имеется в виду development-машина)
11) Если вы считаете, что постигли PHP5 в совершенстве - вы неудачник. Всегда есть, чему научиться. Если вы точно знаете, у кого вам есть чему поучиться - можете дальше не читать.
12) PHP5 (PHP4 забудьте, как страшный сон!) - очень коварная штука. Людей там слишком много. Большинство программистов находятся на уровне "ниже плинтуса". Причем некоторые из них умудряются писать умные книги (кстати, я до сих пор не видел ни одной нормальной книги по PHP5), и учить людей "тонкостям программирования на PHP" множеством других способов. Научитесь отделять зерна от плевел - то есть чайников от профессионалов, этот навык будет для вас одним из важнейших. Учитесь у профессионалов. Может быть, вы не представляете, сколько можно потерять времени, пытаясь учиться чему-то у чайников (и мне кстати тоже не верьте
13) И не верьте никому, кто заявляет, что PHP5 - "плохая" технология, пока не врубитесь в нее хотя бы на 90% и точно не будете знать, чего вам в ней не хватает
автор: AirWorker
Источник: http://habrahabr.ru/blogs/php/22881/
|
|
|

15.01.2009, 10:37
|
|
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме: 6490435
Репутация:
2290
|
|
10) Если на вашей рабочей машине PHP работает без акселератора - вы нюхаете цветы в противогазе, надетом на респератор, а поверх этих гламурных шмоточек на вас еще надет... ТАНК! Установите уже акселератор, черт возьми! (upd: имеется в виду development-машина)
Нах?
(кстати, я до сих пор не видел ни одной нормальной книги по PHP5)
Я видел 3 штуки. 2 выложены в теме.
И не верьте никому, кто заявляет, что PHP5 - "плохая" технология, пока не врубитесь в нее хотя бы на 90% и точно не будете знать, чего вам в ней не хватает
Я врубился на 90%. Она плохая.
|
|
|

15.01.2009, 10:39
|
|
Banned
Регистрация: 11.10.2006
Сообщений: 682
Провел на форуме: 3750406
Репутация:
271
|
|
ТС +1.
nerezus,вау,ку,куда пропадал?давно тя невидал.
|
|
|

15.01.2009, 10:41
|
|
Постоянный
Регистрация: 05.07.2008
Сообщений: 555
Провел на форуме: 3134311
Репутация:
1467
|
|
Информативно!!!...)) первый раз читаю такое!!
|
|
|

15.01.2009, 15:39
|
|
ВАША реклама ТУТ!!
Регистрация: 01.07.2005
Сообщений: 647
Провел на форуме: 3478464
Репутация:
714
|
|
Сообщение от nerezus
Я врубился на 90%. Она плохая.
И чего же в ней тебе не хватает??
__________________
My ICQ: 296@463@859 ONLY!! Please check your list!!
И здесь могла бы быть ВАША реклама!!!
|
|
|

15.01.2009, 16:43
|
|
Познавший АНТИЧАТ
Регистрация: 30.04.2007
Сообщений: 1,206
Провел на форуме: 4778940
Репутация:
1257
|
|
9) Если на вашей рабочей машине PHP работает под Windows - вы нюхаете цветы в противогазе....
10) Если на вашей рабочей машине PHP работает без акселератора - вы нюхаете цветы в противогазе....
+1 нах?
5) Если вы считаете, что echo быстрее print - вы неудачник.
никогда об этом не задумывался. всегда юзал echo.
а в целом.. ооп я использую очень редко. php5 юзаю только по тому, что там больше функций.
но частичто согласен со статьёй. особенно с
11) Если вы считаете, что постигли PHP5 в совершенстве - вы неудачник. Всегда есть, чему научиться.
|
|
|

15.01.2009, 17:00
|
|
Постоянный
Регистрация: 21.08.2007
Сообщений: 367
Провел на форуме: 3578960
Репутация:
468
|
|
"и мне кстати тоже не верьте"
не буду, ибо не информативно и не обосновано.
|
|
|

15.01.2009, 17:12
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
Ну так, есть парочка интересных моментов, но в основном всё [:]|||||[:]
|
|
|

15.01.2009, 18:16
|
|
Участник форума
Регистрация: 23.06.2007
Сообщений: 188
Провел на форуме: 1051973
Репутация:
116
|
|
ну дык echo набрать быстрее..
|
|
|

15.01.2009, 18:36
|
|
Reservists Of Antichat - Level 6
Регистрация: 23.05.2008
Сообщений: 756
Провел на форуме: 9257858
Репутация:
979
|
|
Сообщение от D Mak
ну дык echo набрать быстрее..
А если бы print быстрее был,все бы echo набирали ? 
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|