Переходити на php 7.0 або почекати? Ось і ми так довго думали, зважували, прикидали. Однак вчора настав той момент, коли потрібно було швидко прийняти рішення
В результаті ввечері був здійснений перехід з php 5.6 на php 7.0
Короткі характеристики сервера
- ОС: FreeBSD
- RAM: 5 Гб
- CPU: Xeon E5335 2.00GHz * 4 (ядра)
Оскільки це FreeBSD і тримати одночасно більше однієї версії php не представляється можливим (насправді можна, але з цим доведеться попаритися), даунтайм був всього 40 хвилин, які потрібні були на знесення php 5.6 і установку php 7.0
До речі у нас є ще сервер на Gentoo, яка надає можливість встановити кілька версій php. На даний момент там php 5.6, 7.0, 7.1. Але це до слова
І ось, що у нас вийшло. Подивимося на денні графіки, де в лівій частині день вчорашній, а праворуч день сьогоднішній
Що не змінилося
Що змінилося
З якими ми зіткнулися труднощами
- У поточному php 7.0 немає модуля memcache. Довелося завантажувати сторонній порт php70-pecl-memcache
- Немає модуля mysql. До цього потрібно бути готовим і заздалегідь передбачити в плані переходу перехід на mysqli. Більш-менш сучасні фреймворки підтримують mysqli
- Якщо використовуєте pecl-pdflib, будьте готові до того, що працювати він не буде. Ми використовуємо wkhtmltopdf
- Частина порталу використовувала mpdf. Він не працює з php 7.0. Встановили свіжий за допомогою composer
- Провели легкий рефакторинг коду
При тій же кількості відвідувачів порталу навантаження на сервер впала в два рази