Страшные Истории На Ночь О 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) Если вы думаете, что эхо работает быстрее, чем печать, вы неудачник.

В современных MVC-проектах, как правило, такие фичи вызываются максимум три раза: во фронт-контроллере, в AJAX-контроллере и в RSS-контроллере - то есть максимум три оператора вывода в стандартный поток за весь ваш огромный проект. 6) Если вы молитесь за фронт-контроллер Zend Framework, это ваше право.

Но его концепцию "/key/value/" считают революционной люди, которые не видели ничего, кроме Эkey=value&foo=bar, но кто-то использовал концепцию /virtdir1/virtdir2/virtfile/, используя грязные хаки ОШИБКА 404, задолго до ее широкое появление на виртуальном хостинге (и очень задолго до появления VDS) mod_rewrite (и PHP5 ;).

Конечно, фронт-контроллер ZF очень гибкий, но не проще ли было бы написать свой? Все вышесказанное справедливо только для крупных проектов; если вы пишете много мелких, это не для вас (используйте стандартный Front Controller ZF и ориентируйтесь на простоту поддержки).

7) echo "preved $foo $bar"; эхо 'предварил'.

$фу.

''.

$бар; echo 'preved', $foo, '', $bar; sprintf('preved %1$s %2$s', $foo, $bar); Как опытный профессионал в области высоких нагрузок, можете ли вы с закрытыми глазами сказать, какой дизайн быстрее? Расслабь свой анус, друг мой, ты неудачник.

Можно точно и аргументировано сказать, какую концепцию выбрать стандартной в рамках большого проекта – респект. 8) Забудьте и навсегда отправьте виртуальные хостинги себе в глубокий анус как самый страшный кошмар.

Идите и купите себе виртуальный выделенный сервер с root-правами за > =150 рублей в месяц.

Установите туда свой любимый Debian/Gentoo/FreeBSD и управляйте им как Root Almighty! Отныне ты свободен! :) 9) Если PHP работает под Windows на вашей рабочей машине, вы чувствуете запах цветов в противогазе.

Если вы хотите стать профессиональным серверным программистом для *nix, смело сносите Windows и устанавливайте *nix (Linux, FreeBSD, OpenSolaris и т. д.).

Если такой цели нет, вы можете запустить *nix-сервер в виртуальная машина (Virtual Box, VMvare и т. д.), но, пожалуйста, не мучайте PHP - не запускайте его в Windows. 10) Если на вашей рабочей машине PHP работает без акселератора - вы нюхаете цветы в противогазе, надетом на респиратор, а поверх этой гламурной одежды на вас еще и.

ТАНК! Ставьте уже акселератор, блин! (upd: имеется в виду машина разработки) 11) Если вы думаете, что освоили PHP5, вы неудачник.

Всегда есть чему поучиться.

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

12) PHP5 (PHP4 забудьте как страшный сон!) - очень коварная штука.

Там слишком много людей.

Большинство программистов находятся на уровне «ниже плинтуса».

Более того, некоторые из них умудряются писать умные книги (кстати, я до сих пор не видел ни одной нормальной книги по PHP5), и обучать людей «премудростям PHP-программирования» многими другими способами.

Научитесь отделять зёрна от плевел – то есть чайников от профессионалов, этот навык будет для вас одним из самых важных.

Учитесь у профессионалов.

Возможно, вы даже не представляете, сколько времени можно потратить, пытаясь чему-то научиться у чайников (и, кстати, тоже мне не верьте ;) 13) И не верьте никому, кто утверждает, что PHP5 — «плохая» технология, пока вы не разберетесь в ней хотя бы на 90% и не будете точно знать, чего вам в ней не хватает ;) upd: Естественно, все вышесказанное относится к тем проектам, где есть хоть какая-то сложность и загруженность.

Теги: #php #php5 #hi-load #OOP #design #php

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.