Здравствуйте! У меня нет опыта по высоконагруженным проектам. Я может сейчас глупость напишу, но мне хотя бы подскажите. Есть одна идея, которую хочу реализовать. Как можно рассчитать нагрузку? Ну к примеру берем PHP+Kohana бэкэнд, фронт-энд Javascript, скрипты в голом виде без акселераторов. Если на портале сидит скажем одновременно 1000 человек, то получается по теории, один файл с каким-либо скриптом может быть вызван 1000 раз одновременно. Конечно это гипотетически. А если у меня сервис станет популярным и там будет сидеть 10К, 100К, миллион и т.д. пользователей одновременно. Можно как-то рассчитать или почитать где, какую нагрузку может выдержать PHP и где будет грань после которой станет понятно, что нужно все переписывать скажем на Python или вообще на Java. Конечно скрипты можно акселераторами ускорить. Понимаю, что большая нагрузка ляжет на MySQL. Вот вобщем такой вопрос.
не особо это расчитывается. зависит от поведения пользователей. Может они будут набегать только перед премьерой фильма, а 99% времени сервис будет простаивать... Такой пример: страница генерится 200мс (50 пхп, 150 мускул), сколько страниц может выдать в секунду сервер?
Понятно, что не особо рассчитывается. Просто это не развлекательный сайт а деловая программа, работа со складом, отчетность и т.п. вещи. И если все это начнет тормозить в один прекрасный момент, то пользователи побегут. А не хотелось бы. Конечно Facebook это пример, но у них много на С++ написано. Так что даже не знаю, может пора Java учить.
докупят мощности тупо, не парься. Добавлено спустя 1 минуту 8 секунд: при 200мс на страницу у меня на виртуалке выдаёт 28-29 страниц в секунду. так что не сильно парься-то. Сколько будет юзеров? ну поставь ченить-то типа APC
расчитать трудно, можно попытаться устроить краш-тест. нагрузи его по самые помидоры и снимай статистику.
Коллеги правильно говорят - никак. Можно говорить только про сферического коня в вакууме. Если про него, то всё очень разно - mySQL может выполнить и 30000 запросов в секунду на поток и 1/сек и даже меньше, всё зависит от конкретного запроса, конкретной БД. PHP тоже самое - может и сотни страниц в секунду выдать может 1 и меньше, зависит какова страница, что считать/делать. Нормальным считается, насколько знаю, время генерации страницы ~0.1 секунд (PHP+mySQL). Если использовать кеширование страниц (что делают высоконагруженные системы), то можно увеличить скорость на 1-2 порядка, в зависимости от (но там уже будут проблемы в другом месте). А вообще, когда Вы (Ваш работа) дорастёт до 1.000.000 страниц в сутки, Вы уже будете знать что и как
Ну наверное так. Спасибо. Сначала количество пользователей будет в пределах 10 чел, потом хочу выложить если будет интересно народу, будет прибавляться. Предела нет. Подскажите, читал вроде Wikipedia полностью на PHP написана. Уж у них пользователей которые одновременно висят - тьма. Не в курсе у них только PHP или узкие места на С переписаны, также как и у Facebook? БД какую юзают?