Умерет ли PHP в мире разработки веб-страниц?
Я знаю, что PHP по-прежнему является самым популярным языком веб-программирования в мире. Этот вопрос просто хочет привести некоторые мои опасения по поводу PHP.
PHP естественно связан с проблемой C10K. Поскольку PHP (обычно запускаемый в Apache) не может быть управляемым событиями или асинхронным, каждый HTTP-запрос будет занимать как минимум один поток или процесс. Это делает его устойчивым, чтобы быть более масштабируемым.
В настоящее время многие веб-сайты (такие как Facebook и Yahoo!) с высокой производительностью и масштабируемостью по-прежнему зависят от PHP на своих интерфейсных серверах. Я полагаю, это из-за наследства. Возможно ли, что PHP будет заменен языком, более подходящим для C10K?
3 ответа
Возможно ли, что PHP будет заменен языком, более подходящим для C10K?
Я бы сказал очень маловероятно.
Не берите в голову Facebook или Yahoo, подавляющее большинство веб-сайтов даже не близко к этой стадии популярности. Большинство веб-программистов работают над проектами малого и среднего размера, в которых действительно высокая производительность просто не требуется, и дополнительная производительность может быть достигнута с большей выгодой, если использовать больше оборудования для решения проблемы, чем задействовать больше программистов для работы над эффективностью.
Кодирование для специализированных высокопроизводительных серверов сокетов сложнее и медленнее, чем хакерский скрипт PHP, поэтому PHP(*) всегда выигрывает. И давайте посмотрим правде в глаза, есть вероятность, что вы столкнетесь с другими проблемами масштабирования (вероятно, с производительностью базы данных) задолго до того, как неэффективность соединения "один поток или процесс на одновременное соединение" начнет кусаться.
C10K? Для подавляющего большинства приложений, вам это не нужно.
(*: или другие подобные среды сценариев. С разгромом PHP6 и продолжающимися проблемами PHP5 с Unicode и другими давними проблемами на уровне языка, другие языки и платформы должны набирать популярность за счет PHP. Но не те, которые жертвуют простотой написания для высокой масштабируемости.)
PHP использует архитектуру Shared Nothing, что делает его очень хорошо масштабируемым.
PHP умрет? Я не достаточно невежественен, чтобы ответить на это смелым Нет. У каждой технологии есть время, и я убежден, что будет что-то лучше, экономнее, быстрее, что-нибудь более подходящее для Интернета, чем PHP. Но PHP скоро умрет? Нет, я так не думаю. Потребность в масштабируемости - это то, что большинство из нас хотели бы иметь, но на самом деле большинство веб-приложений просто не нуждаются в этом.
Связанное чтение, которое имеет больше информации о масштабируемости PHP
Видя интерес к высококачественным PHP Framework, таким как Zend PHP, Symfony, Cake, Solar и другим, я думаю, что PHP - это возрождение.
Его новая объектно-ориентированная модель позволяет профессиональным разработчикам вернуться к известным парадигмам и привлечь гораздо больше людей, которые не хотят приходить в PHP из-за множества объектно-ориентированной поддержки.
Кстати, я вижу растущую потребность в найме профессионального разработчика PHP с солидными навыками и использованием PHP Framework (Symfony и Zend Framework наиболее востребованы во Франции).
PHP не так медленен, как мы думаем, хорошее кэширование, оптимизированный запрос БД того стоит. В настоящее время также дешевле купить пакет ОЗУ, чем оптимизировать код для ускорения сборки или C.