Перенос нагруженного сайта на новый VPS

12
Nikolaich
На сайте с 18.05.2005
Offline
132
224

Всем доброго дня.

Есть сайт написан на opencart 1.5 перепиленный вдоль и поперек, по этой причине жутко тормозил в свое время на shared хостинге, после чего его и перевели на VPS за 20к, где к нему прикрутили memcached + поставили на nginx + php-fpm.

В целом на этом VPS сайт работает сносно, за исключением страниц категорий, где отклик сервера по яндекс вебмастеру в среднем составляет 1.5 секунды, при этом всё это добро вертится на гибридных HDD и лагает даже в консоли.

Конфиг текущего сервера
CPU 4x2.4 E5-2640, 24 Gb RAM, 100Gb Hybrid
CentOS 7.4.1708, nginx 1.13.6, php 7.3.11,  5.5.56-MariaDB

В свете событий последних месяцев решили что 20К это много и решили перенести это на свой новый VPS.

Собственно заказали VPS на тарифе Форсаж 3.0
CPU 4x2.4 Gold 5115, 8Gb RAM, 100Gb nvme.
Debian 10,   nginx 1.16.1, php 7.4.7,  10.3.22-MariaDB

Перенес сайт,  поставил на nginx+php-fpm (fast cgi) подрубил memcached с теми же параметрами что и на исходном сервере и получил без нагрузки 2.2 секунды на целевой категории.
Пошаманив с конфигом nginx привел его к формату схожим с исходным сервером, получили в районе 1.5 секунд
Пошаманив с конфигом mysql получил 1.2 секунды и довольный ушел спать.

Сегодня решил потестить поведение сервера под нагрузкой, т.к. 24 гига рамы + swap на 9 гигов на исходном меня как-то смущали.

Запустил качалку сайта + натравил онлайн ботов на сайт, в течение получаса больше 2.5 памяти не съедалось, по процессору тоже всё было довольно терпимо.
Решил проверить время отклика яндекс вебмастером без нагрузки - 2.2 секунды, как будто откатились изменения в настройках nginx и mysql %)
Проверил настройки - всё на месте.

По итогам имеем:
Конфиг железа нового сервера значительно лучше по дискам.
Конфиг железа старого сервера лучше по памяти, но на текущем сервере потребляется около 6 из 24 гигов.
Конфиги по софту +- идентичны, кроме того на новом сервере более новые версии всего что можно.

В чем могут быть грабли, учитывая тот факт что еще вчера вечером всё работало как нужно?

Бабло побеждает зло.
Aisamiery
На сайте с 12.04.2015
Offline
204
#1

Пальцем в небо если честно, какие настройки, куда настройки... 

Нужно ставить мониторинги и смотреть, плюс профилировать код и смотреть где и что проседает - это виртуальный сервер, то что у вас там циферки другие ещё ничего не значит, возьмите физическую железку лучше, если вы относите тем более ИМ к нагруженному

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
Nikolaich
На сайте с 18.05.2005
Offline
132
#2
Aisamiery #:

Пальцем в небо если честно, какие настройки, куда настройки... 

Нужно ставить мониторинги и смотреть, плюс профилировать код и смотреть где и что проседает - это виртуальный сервер, то что у вас там циферки другие ещё ничего не значит, возьмите физическую железку лучше, если вы относите тем более ИМ к нагруженному

Задачи профилировать код и вообще трогать сайт на данном этапе нет.

Задача настроить новый VPS что бы сайт на нем работа НЕ медленнее чем на старом.

Взять физическую железку с целью экономии на текущем VPS это конечно интересная мысль.

Aisamiery
На сайте с 12.04.2015
Offline
204
#3
Nikolaich #:

Задачи профилировать код и вообще трогать сайт на данном этапе нет.

Задача настроить новый VPS что бы сайт на нем работа НЕ медленнее чем на старом.

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

Aisamiery
На сайте с 12.04.2015
Offline
204
#4
Nikolaich #:

Взять физическую железку с целью экономии на текущем VPS это конечно интересная мысль.

Вы сейчас платите 2800 за вдс, хотя можно вменяемую железку найти от 3500 которая будет по лучше вашей текущей виртуалки

Nikolaich
На сайте с 18.05.2005
Offline
132
#5
Aisamiery #:
Ваш новый впс может быть на нагруженной ноде, против того что старая впс может быть на пустой. От сюда прыгают цифры, настраивали ночью нагрузки на ноде не было, проснулись в рабочее время на ноде нагрузка есть и цифры сразу стали другими

И что по вашему мнению у моего VPS отжирают соседи по ноде при KVM виртуализации?
И еще момент, за сегодня я наверное уж раз 300 нажал кнопку проверки времени ответа и ни разу время не опустилось ниже 2.2 сек, мне кажется устойчивое отсутствие нагрузки у соседей вчера и столь устойчивое наличие сегодня очень маловероятно.

Aisamiery #:
Вы сейчас платите 2800 за вдс, хотя можно вменяемую железку найти от 3500 которая будет по лучше вашей текущей виртуалки

Лучше / хуже - всё это понятия относительные.
Виртуалка в данном случае это гибкость, когда можно быстренько докинуть ядер / рамы хдд, если затачиваться на дедик, то нужно сразу будет брать с запасом, который в общем-то может никогда и не понадобится.
А это никак не 3500, это в лучшем случае х2, если не рыться по помойкам.

А самое прикольное что я возьму дедик скажем за 8к, настрою его аналогичным образом и не получу <= 1.5 сек )))

Andreyka
На сайте с 19.02.2005
Offline
817
#6

Дядя Федор, ты неправильно бутерброд ешь

Тебе нужно кластер на нескольких железных серверах, а вместо этого ты носишься с VPS

Не хочешь профилировать код - плати нормальные деньги за нормальное железо

Не стоит плодить сущности без необходимости
Nikolaich
На сайте с 18.05.2005
Offline
132
#7
Как не умел у нас народ читать сообщения, так и не умеет.
Русским по белому пишу что скорость работы на текущем храмом VPS устраивает, нужно её тупо повторить и очевидно это вопрос настройки софта.
А тут дедики, кластеры...
Датацентр под этот сайт построить не надо случаем?
Aisamiery
На сайте с 12.04.2015
Offline
204
#8
Nikolaich #:
Русским по белому пишу что скорость работы на текущем храмом VPS устраивает, нужно её тупо повторить и очевидно это вопрос настройки софта.

Так повторите, сюда то вы зачем написали? Кроме как у вас, ни у кого больше нет доступа не на храмой не на другой, 0 конкретики, что грузится 2 секунды, почему грузится.... у вас на новой впс может сессия только стартует 1 секунду и никто кроме вас этого узнать не сможет.

Если как вы заявляете вы скопировали 1 в 1, то скорее всего дело не в конфигах, по крайней мере не в тех которые вы скопировали 1 в 1, у вас виртуальная железка, там начиная от оверсела проца и заканчивая ушатанной/ограниченной системы хранения, вы можете взять 2 одинаковые виртуалки у одного провайде и получить по тесту разных попугаев.... Кстати а вы тестили производительность старой впс и новой каким нибудь бенчем?

M
На сайте с 17.09.2016
Offline
86
#9
Nikolaich #:

И что по вашему мнению у моего VPS отжирают соседи по ноде при KVM виртуализации?

Ещё как

https://ru.wikipedia.org/wiki/Оверселлинг

И RAM и CPU, и диски (пока полностью не забиты) и сеть, - всё оверселлится

Оверселлинг — Википедия
  • ru.wikipedia.org
Оверселлинг (англ. ) — продажа услуг поставщика сверх тех объёмов ресурсов, которые возможно предоставить. Применительно к продаже услуг хостинга оверселлинг означает продажу вычислительных мощностей в объёмах больших, чем может предоставить серверное оборудование. В основе оверселлинга лежит тот факт, что большинство клиентов никогда полностью...
Nikolaich
На сайте с 18.05.2005
Offline
132
#10
Aisamiery #:
Так повторите, сюда то вы зачем написали?

За тем чтобы кто-то, кто уже сталкивался с подобным написал что-то типа "твоя версия nginx криво работает с php-fpm",  и т.д.

Aisamiery #:
Кроме как у вас, ни у кого больше нет доступа не на храмой не на другой

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

Aisamiery #:
0 конкретики,  что грузится 2 секунды

Афигеть, расписал все по железу, по версиям, описал конкретную проблему, никто толком простыню эту я прочесть не может, после первых двух строчек советуют кластеры строить, а всё равно конкретики 0.
Какой конкретики вам не хватает?

Касательно 2-х секунд согласен, тут я мысль не развил.
В качестве пузомерки была выбрана страница категории с самым большим кол-вом товаров, она же по совместительству имеет самое большое время отклика, как и писал на старом VPS это 1.5 секунды.
Вот на начальном этапе настроек VPS дергали её на старом и на новом добиваясь увеличения скорости на новом.

Aisamiery #:
у вас на новой впс может сессия только стартует 1 секунду и никто кроме вас этого узнать не сможет.

Если есть какие-то предположения, пишите куда посмотреть / что сделать.

Aisamiery #:
Если как вы заявляете вы скопировали 1 в 1, то скорее всего дело не в конфигах, по крайней мере не в тех которые вы скопировали 1 в 1, у вас виртуальная железка, там начиная от оверсела проца и заканчивая ушатанной/ограниченной системы хранения, вы можете взять 2 одинаковые виртуалки у одного провайде и получить по тесту разных попугаев.... Кстати а вы тестили производительность старой впс и новой каким нибудь бенчем?

Не 1 в 1, но близко к тому.
Вы серьезно верите что на VPS БЕЗ нагрузки в нормальной компании (коей я считаю 1vds), может быть перманентный оверсэйл проца и памяти с прикрученным memcached?
Оверсейл диска вообще не в кассу, я писал что на старом впс гибридные hdd и это видно даже по смене папок в консоли и скачиванию файлов по sftp, новый VPS по диску в разы быстрее.

Бенчмарки не гонял ибо это в любом случаесинтетика, которая в теории может показать пятикратное преимущество нового VPS например из-за nvme, а по факту сайт работает медленнее.
Сейчас ради интереса взял первый попавшийся http://www.php-benchmark-script.com/ это тупо математика, результаты +- одинаковые, хотя новый несколько быстрее, но на старый идет трафик.
Но повторюсь, это синтетика которая подтверждает что по процессору это +- одинаковые железяки, что подтвеорждается конфигом. 

Mobiaaa #:

Ещё как

https://ru.wikipedia.org/wiki/Оверселлинг

И RAM и CPU, и диски (пока полностью не забиты) и сеть, - всё оверселлится

Я не к тому что на KVM оверсейл невозможен в принципе, а к тому что по описанным выше симптомам и конфиге может оверселиться так, что это приводит к текущим последствиям.
Диски и сеть мимо, на новом VPS скорость отдачи контента высокая и стабильная.
Память и процессор простаивают ибо VPS не под нагрузкой, раз в 10-20 минут (иногда чаще иногда реже) мною через яндекс дергается одна страница для замера скорости, память и процессор при этом запросе еле напрягаются, поэтому тоже мимо.

Free PHP Benchmark Performance Script
  • www.php-benchmark-script.com
This free PHP performance benchmark script is a free PHP script to calculate benchmark speeds (PHP execution times) of PHP web hosting servers. The free PHP script performs some simple mathematics and string manipulating functions repetitively, and records the PHP code execution time it takes to complete the PHP functions.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий