Назад | Перейти на главную страницу

Веб-сервер и сервер базы данных в совершенно разных местах

Каковы последствия для производительности при наличии веб-сервера (apache / php) и сервера базы данных (mysql) в совершенно разных местах с разными хостами.

Изменить: это веб-приложение, интенсивно использующее базу данных, поэтому каждая страница совершает несколько обращений к базе данных. База данных обычно является узким местом в веб-приложениях, просто интересно, является ли скорость сети значительной по сравнению с типичной скоростью взаимодействия с базой данных.

Это сильно зависит от скорости соединения между двумя точками. Некоторые компании имеют высокоскоростные магистрали между центрами обработки данных, но судя по всему, вы смотрите на две разные компании. Поскольку соединение осуществляется через Интернет и линии, не контролируемые ни одной из компаний, однозначного ответа на этот вопрос нет.

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

Каковы последствия для производительности наличия веб-сервера (apache / php) и сервера базы данных (mysql) в совершенно разных местах с разными хостами.

Да, есть последствия для производительности, и все они отрицательные. Такая система может работать, особенно если две системы соединены VPN с соглашением об уровне обслуживания, основанном как на времени безотказной работы, так и на производительности. Если вы просто проходите через «облако», у вас не будет стабильности производительности сети, и нет одно горло к удушению если связь или производительность ухудшаются.

просто интересно, значительна ли скорость сети по сравнению с типичной скоростью взаимодействия с базой данных.

Это будет полностью зависеть от ваш скорость сети и ваш база данных и приложение.

Следует учитывать два аспекта производительности сети - задержку и пропускную способность. Вы должны учитывать и то, и другое.

Например, пользователи часто будут терпеливы (до определенного момента) в ожидании поискового запроса. Они будут не Будьте терпеливы к загрузке каждой страницы во время навигации по сайту. Хотя оба они рассматриваются как задержка с точки зрения пользователя, первый пример может быть взвешен по пропускной способности сети между базой данных и веб-сервером, а второй - по задержке сети.

Или не! Только тестирование покажет.

Какие запросы вы выполняете?

Если вы выполняете сложные запросы, в которых ограничивающим фактором является скорость ЦП, возможно, подключение к базе данных со скоростью менее 10 МБ / с и высокая задержка не будут столь заметны. (но это должны быть либо очень сложные запросы, либо очень слабая машина)

Тем не мение, вы можете ускорить процесс путем кэширования на компьютере веб-сервера или путем настройки небольшого сервера репликации mysql, локального по отношению к веб-серверу, на котором хранятся копии любых часто используемых данных.

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

Это требует более подробной информации. Вариантов подключения может быть много, если они находятся в разных местах. Было бы медленное общение, это было бы медленное соединение, и наоборот. Есть еще один вопрос? Насколько активно происходит обмен данными между двумя серверами?

РЕДАКТИРОВАТЬ: Каковы ваши варианты подключения? Сколько пользователей вы ожидаете? Ваша «интенсивная база данных» может работать для нескольких одновременных пользователей, но если ваш сайт получает много пользователей, у вас будет один медленный сайт. Вам нужно будет провести много нагрузочного тестирования на этом сайте, если это ваш единственный способ его настроить.

Каков средний размер данных, запрашиваемых с сервера базы данных, какова ваша доступная пропускная способность между ними и насколько интенсивно они используются? Должно быть довольно легко определить, возникнет ли здесь узкое место, препятствующее показу.