Pull to refresh

Comments 38

Боюсь, это не удивление вашему «достижению», скорее эдакий facepalm.jpg
Я понял, что это был не восторг. Данные привел исходя из мониторинга. На данный момент главная страница загружается за 140 мс. Я не хотел обсуждать конкретные цифры, в статье я хотел показать общую динамику.
Подскажите, за счет чего упала нагрузка на дисковую подсистему?
Предполагаю что opcache помогает, но не уверен.
Это может быть следствием того, что PHP7 потребляет меньше памяти — больше остаётся на кеши.
У меня нет точного ответа на этот вопрос. Наибольшую загрузку на диски у нас дает mysql, версия «больше остается на кеши» хорошая, но количество памяти под мускул мы не меняли.
Тоже скоро будем переводить громадный проект с 5.6 на 7, и тоже Yii 1

И снова графики не от нуля… Страницы стали отдаваться быстрее на треть, а нарисовано как будто в два раза.

Странно, зачем было подменять сокет?
У себя делал так:
Поднимал php-fpm 7-ку например на 127.0.0.1:9900
Делал поддомен например beta.site.com, прописывал ему fastcgi_proxy 27.0.0.1:9900;
И уже на бете тестировал.
Да и проблем с переездом очень и очень мало.
Отдельный сокет для того, чтобы перезапуском одного из двух сервисов (nginx) можно было вернуться в исходное состояние. Это не принципиально, решений тут можно придумать десяток.
Я как раз про перезагрузки и говорил, делается поддомен ему прописывается php-fpm 7 и дальше тесты, как все тесты пройдены в основном домене подменяется сокет и в продакшен.
И на реальных пользователях оказывается, что в тестах что-то упустили…
То есть лучше каждый раз из-за ошибки дергать демона nginx?
Из-за ошибки, не замеченной на стадии тестирования, лучше дернуть nginx, чем менять версию php-fpm на лету. В общем случае.
Я все равно не понимаю чем это лучше.
В моем варианте два сайта
1 — полностью рабочий сайт (nginx + php-fpm 5)
2 — этот же сайт только (nginx + php-fpm 7)
2 сайт тестируется, не только автоматическими тестами но и ручками, как только все готово меняется сокет и все.
Так и в варианте автора то же самое — переключение на php7 в продакшене переходит путём изменения сокета в конфигах nginx. Если достаточно долгое время проблем от смены версии не обнаруживается, то первый (php5) сокет гасится навсегда, а если проблемы появились, то практически моментально на него переключаются снова. Чем ваш вариант ввода php7 в продакшен отличается от авторского?

Тем, что во время первичного тестирования новой версии основной сайт не гасится, тестовая версия видна только тому кто тестирует.

Кто вам сказал, что у автора первичное тестирование проводится на продакшене?

Автор и сказал.


Подняли вторую версию демона php-fpm для семерки. Для сайта, для которого планировался переезд, поднимался второй отдельный сокет. Далее сокет подменялся в конфигурации nginx.

Тут написано про поднятие второго php-fpm — но ничего не сказано о поднятии второго nginx или заведении второго сайта на старом, лишь о подмене сокета.

Автор такого не говорил, вы что ) Для первичных тестов у нас отдельный сервер разработки, но это не имеет отношения к статье.

Этот ваш комментарий должен был быть десятью уровнями выше. И он должен был звучать "так мы примерно так и сделали, только публичного доступа ко второму серверу не давали".

Как по мне тут сказано о стратегии переключения на php7 на продакшене с возможностью практически моментального отката, а про фазу предварительного тестирования не сказано ничего, из чего можно было бы сделать вывод, что тестирования не было вообще. Слава богу, сейчас такое тестирование, хотя бы ручное, предполагается по умолчанию.
Мне так было привычнее.
Вы не поняли сути ответа.
Суть в том что не на живом сайте меняем сокет, а создается поддомен ссылкой на ту же папке где лежит рабочий сайт (или делается форк) и вот там уже ведется адаптация под 7 версию.
Нужна ли кому-то пошаговая инструкция по миграции php5.x на php7.0 с миграцией Laravel5.2 на Laravel5.3?
Пару недель назад переехали на beastgaming.club этим стэком, есть бесценные шишки.
Про бесценные шишки всегда интересно почитать
Да, хотелось бы. Особенно, если что-нибудь нетривиальное где-то пряталось.
Это всегда полезно. Даже тем, кто не работает с Laravel.
Угу. Не люблю Ларавел, но с удовольствием почитал бы.
Почти без проблем запустил приложение на symfony1.4, которое до этого на 5.3 работало. Впечатления только положительное. Причём много его сразу :)

Столкнулся с такой же задачей, сейчас новый релиз уже пакуем в Docker контейнер. По началу хотели сделать как вы. Интересно просто насколько наше решение лучше.

Чем вызван выбор докера? Какие-то специфические задачи?
Sign up to leave a comment.

Articles