Посоветуйте организацию платформы

ZN

Новичок
Посоветуйте организацию платформы

Допустим, есть сайт, на нём ~2000000 пользователей, в среднем 4-5 тысяч одновременно онлайн, до 50 тысяч в пике нагрузки, специфика сайта по весу содержимого страниц может быть сравнена с чтением новостей на, скажем, rbc.ru, то есть немного текста+картинка(или две)+баннеры вокруг и всякая мелочь. Для генерации страниц используютя шаблоны Smarty, всё, что можно, - кешируется. Активно применяется AJAX. Пусть при нагрузке 5 тысяч пользователей онлайн будет около 1000 хитов в секунду. Теперь вопросы: какую базу лучше использовать (что насчёт MySQL)? как организовать сервер (много серверов, на которых клиентов раскидывает прокси в засисимости от их загрузки, или кластер(тогда какая именно технология), или ещё что-то)? как организовать базу (опять-же кластер, на отдельном серваке или нет, или может у каждого сервака своя с настройками репликации(это если по сервакам прокси распределяет) )? Интересуют конкретные советы по реализации, а не "собери кластер".
 

alexhemp

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

Я бы начал с того, что знаю. Вынес бы отдельно MySQL, вместо apache использовал бы nginx на фронт-енде, вынес бы отдельно сервера с графикой и баннерами, на MySQL сделал бы репликацию с мастер-сервера на слейвы. Сделал бы несколько фронт-ендов и хотябы DNS Round Robin для них бы сделал, потом еще можно использовать внешние RAID-ы для больших объемов и т.п. - все это можно оптмизирововать и настраивать до бесконечности. В итоге все упрется в бюджет и опыт.
 

DIS

Новичок
и мне посоветуйте, плиз.

дано: два сервера с Linux + дисковый массив.
задача: отказоусточивая система с распределением нагрузки между серверами.

предполагается сделать кластер из двух серваков с общим дисковым массивом.
я предполагаю сделать так.. все сайты и файлы баз MySQL на дисковый массив, который общий для двух серваков,
а на самих серваках поставить одинаковые LAMP.. всё внешне очень просто.

есть пара вопросов:

чем лучше распределять запросы в зависимости от нагрузки?

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

что вообще будет, если массив рухнет? серваки не рухнут?

есть идея, что можно копировать базы и сайты на один из серваков и как-нибудь отслеживать падение массива и в случае его падения гасить второй сервак, гасить apache и mysql на этом серваке и поднимать apache и mysql с другими конфигами (где изменён путь к базам и сайтам)..
так вот как отследить падение массива? file_exists?:)
 
Сверху