Pull to refresh

Comments 42

А зачем
unzip build-essential python-software-properties
?
Вы их напрямую не используете, а когда какому-то пакету они будут нужны — установятся автоматически, то же самое к vim — дело вкуса, и никак не обязательно, nano по-моему стоит по умолчанию в системе.

А на счёт

Примечание: я добавил флаг --force-yes для устранения некоторых проблем зависимостей.

то это ничего не устраняет, и вообще чревато последствиями, лучше посмотреть в чём проблемы с зависимостями и испрвить их.

Судя по посту конкретно для Laravel никаких хаков не нужно, а значит вполне достаточно github.com/facebook/hhvm/wiki/FastCGI
Извините, в никсах мало чего понимаю, так что корректно ответить навряд ли смогу :) Про дела вкуса — это выбор автора оригинальной статьи, каждый вправе использовать то, что ему нравится.
Зачем вы автору перевода это пишете-то?
Во время перевода можно было бы и исправить, а если нет понимания — то зачем копипастить.
Правильно. Переводить — смысла нет.
Вы не так поняли. Перевод имеет смысл, но это не отменяет того, что нужно понимать содержимое.
build-essential python-software-properties нужны для запуска add-apt-repository (и, кажется, еще каких-то утилит, связанных с пакетами). Эти команды кочуют из мануала в мануал.
Я знаю, для чего эти пакеты, но автор не использует apt-add-repository
python-software-properties это и есть штука без которой apt-add-repository не работает :-)
build-essential тут непонятно для чего — ибо служит для сборки deb пакетов — автор пакетов не собирает тоже.
А мы о чём?
В статье же

$ echo deb http://dl.hhvm.com/ubuntu precise main | sudo tee /etc/apt/sources.list.d/hhvm.list

apt-add-repository не используется
Я специально оставил смайлик в конце этой строки — говорящий об этом же.
А вообще "| sudo tee" это как бы странное решение само по себе.
">" было бы как минимум проще написать (всмысле аж на 6 символов короче не считая пробелов)
Вы правда не понимаете, зачем тут sudo tee и почему перенаправление не работает? Или Вы из тех, кто правит вордовские файлы под рутом?
[Трольмод включен]
Если в статье используется "-y --force-yes", то править вордовские файлы под рутом это примерно такая же фигня.
На самом деле админы делятся на три вида:
1. Всё делают под рутом
2. Уже не всё делают под рутом (вы видимо относитесь к этой категории) — не самый плохой способ что-то делать
3. Достаточно понимают ЧТО они делают, чтоб делать это БЫСТРЕЕ под рутом :-)
[Трольмод выключен]
На мой взгляд, было бы чуть более интересно, если бы Вы развернули под HHVM уже готовый проект на Laravel(как примечание автора) возможно появились какие либо ошибки и т.д и заодно можно было бы кратко оценить прирост производительности
Если вы имелете ввиду совместимость, то она на уровне ~ 90%
заведется, только вроде namespaces в HHVM не поддерживаются
устаревшая информация
тесты doctrine2 проходили на 99.95%, а это врятли возможно без поддержки наймспейсов

возможно. Давно не смотрел чего там у них поддерживалось или нет.
Поддерживается!) По крайней мере 2.3.0+
Я вообще под впечатлением о проделанной работе, скоро и MySQLi обещают судя по комментариям в GitHub.
Вот только моя поделка легко убивает HHVM с segfault, а почему ни я ни ребята из Facebook пока не поняли…
скоро и MySQLi

То есть сейчас наиболее распространенный экстеншен не работает под HHVM? А зачем он тогда?
Я как резервный вариант использую mysql_*()
объектный интерфейс удобнее :-)
mysql_* вроже же выкинуть обещали
В HHVM, наверное, не скоро выбросят.
А для объектного интерфейса придется обертку писать, если у вас уже какой-то абстракции нет, куда можно встроить функциональные вызовы.
Перевод с добавкой переводчики не всегда хорошо:
HHVM — это не транслятор исходного кода, и т.д. по тексту, это переводчик скопипастил из вики, а зря, в исходном тексте такого небыло/
HHVM — это виртуальная машина преднозначиная для выполнения программ написаных на PHP. Использует технологию JIT компиляции для увеличение скорости выполнения байткода.
Исправил. В следующий раз можно в личку.
Еще могу добавить что выбор fastcgi как протокола был выбран атором статьи зря, так как он не используется в продакшене фейсбуком — и сыроват пока
Вообще непонятно зачем вы занимаетесь переводом, если далеки от этой темы
$sudo apt-get update

делать крайне нежелательно.
Рекомендуется

$ su -c 'apt-get update && apt-get upgrade'

а затем уже пакеты устанавливать.
И Nginx лучше использовать из репозитория Nginx.

Не менее, чем "--force-yes" вредна опция "-y" в install — практически гаратированный выстрел себе в ногу.
Присоединюсь к последнему комментарию, туториал — дело ответственное.
Прежде, чем опубликовать, нужно тщательно отттестировать и проверить.
Это чем же простое обновление списка пакетов хуже чем ещё и апгрейд всех пакетов, которые, к тому же, могут и не обновиться корректно (вы уверены, когда пользователь последний раз обновлял систему?)
Чем вам опция -y то не угодила?
-y, --yes, --assume-yes
Automatic yes to prompts; assume «yes» as answer to all prompts and
run non-interactively. If an undesirable situation, such as
changing a held package, trying to install a unauthenticated
package or removing an essential package occurs then apt-get will
abort. Configuration Item: APT::Get::Assume-Yes.

А вот force-yes, да, может быть опасно, о чем и упоминается в мане к apt-get.

Насчет установки из сторонних репозиториев и в частности nginx, сомневаюсь, что это правильно, ибо есть мейнтейнер и та версия, что есть в репах, она не просто так. Особенно в LTS релизах. Если хочется стабильно свежак, то да — сторонний репо, имхо.
Да мне все равно, используют эту опцию, или нет. Просто это плохая прктика.
Апгрейд системы делается для упорядочивания всех зависисмостей и приведения системы в актуальное состояние.
Это азы.
Следствием установки без апгрейда может быть несоответствие версий зависимостей и крах при установке ПО.
Это тоже азы.
Админ должен полностью контролировать процесс установки хотя бы потому, что, к примеру, в Debian при установке могут предлагаться альтернативы, и значения по умолчанию, в том числе конфигурация, могут не устраивать админа.
При этом система может запрашивать удаление конкурирующих пакетов, и при такой установке можно просто поломать систему.

Nginx имеет стабильный репозиторий, и он лучше подходит для использования. И не только из-за «плюшек».
Nginx репозиторий предлагает версию 1.4., тогда как precise (12.04) — 1.1.
Debian 7 — 1.2
Впрочем, если хочется использовать старую версию — пожалуйста.
И, по моему мнению — LTS — это просто миф.
Насчет установки из сторонних репозиториев и в частности nginx, сомневаюсь, что это правильно, ибо есть мейнтейнер и та версия, что есть в репах, она не просто так. Особенно в LTS релизах. Если хочется стабильно свежак, то да — сторонний репо, имхо.
habrahabr.ru/post/195742/#comment_6797402

Cтабильные пакеты лежат тут: nginx.org/ru/linux_packages.html — всё остальное сомнительно.
Репозиторий nginx — не сторонний, а официальный.

Вы себе не представляете, сколько странных вещей мейнтенеры пакетов линукс-дистрибутивов делают «просто так». Если есть официальный репозиторий разработчика — он всегда лучше.
Тестировал свой код, примерное ускорение в 2 раза было 3 месяца назад. Как только будет прохождение тестов yii 100%, вернусь к нему. Перспектива явно есть у данного проекта.
Возможно все зависит от кода, я только сообщил о своем опыте, сравнения php-fpm 5.5 + opcache vs hhvm + apc. Возможно что уже стало лучше.
в 2 раза у чего, голого PHP-кода или со всем (БД, статика)?
БД и статика-то тут при чем? ) Естественно речь про код.
так о том и речь, что на реальном проекте разница может быть 5-10%, а не 40 раз
По причине появления хаба Laravel на хабре, отправляю сий пост туда, пусть будет первым.
Sign up to leave a comment.

Articles