Улучшить производительность служб приложений MySQL и AZURE
Недавно мы перенесли наш веб-сайт на основе WordPress из виртуальной машины в службу приложений, чтобы включить автоматическое масштабирование. работает нормально. НО действительно медленный (1,4 секунды при начальной загрузке).
Мы используем: - Сервис приложений PHP - База данных MySQL (AZURE, а не локальная) - CDN
Единственная причина, по которой я мог подумать об этой медлительности, - это база данных MySQL, поскольку она подключается через Интернет и не имеет возможности добавить прямое соединение (как это делает база данных SQLSERVER).
Знаете ли вы какой-нибудь способ оптимизировать это?
большое спасибо
1 ответ
Хотя конечная точка для подключения MySQL является публичным адресом, пока фронтенд и бэкэнд находятся в одном и том же регионе, между ними возникнут проблемы с нулевой задержкой по сравнению с частным адресом. Я бы предложил избавиться от ClearDB MySQL, если это то, что вы используете. Это не достаточно хорошо для производственных сред. Попробуйте MySQL как виртуальную машину или новый MySQL как сервис от Microsoft.
Служба приложений Azure не сопоставляется с виртуальными машинами в отношении производительности, если вы сравниваете 1:1, особенно если вы используете Apache, Nginx или любую другую платформу веб-сервера на виртуальных машинах. Служба приложений под управлением Windows может быть очень медленной для приложений Php, поскольку они работают на IIS. Если вы развернули Службу приложений в Linux, производительность будет лучше, но все равно будет хуже, чем на виртуальных машинах, и все еще в режиме предварительного просмотра.
Единственное, что вы можете сделать для повышения производительности, это включить кеш через плагин WP. По сравнению с предыдущей работой с клиентами, включения кэша страниц / базы данных было достаточно, чтобы увеличить скорость загрузки почти до уровня виртуальных машин.