Распределение нагрузки на веб-сервера и сервера БД.

  • Автор темы Автор темы myDolphin
  • Дата начала Дата начала

myDolphin

Guest
Распределение нагрузки на веб-сервера и сервера БД.

Планируется переделка большого ресурса с большой (20-25 тыс в день) посещяемостью. Планируеться использование связки php+mysql
Остро встал вопрос о необходимости использования нескольких выделенных машин в качестве веб-серверов и серверов БД.
В связи с этим хотел бы попросить у вас любую информацию по данной теме:
1. Как правильно спроектировать БД, учитывая особенности данного ресурса.
2. Особенности написания скриптов.
3. Архитектура ресурса.
4. Любые советы по данной теме, подваодные камни, может кто нибудь уже решал такого рода задачу.
5. Как мне кажеться возникнут проблемы с сессиями. т.к. веб-серверов будет несколько.
6. Может быть есть готовые решения. Мои поиски на данную тему натолкнули меня только на пару статей в инете

Статья о ЖЖ

Статья о WikiPedia

Заранее спасибо
 
А зачем под ресурс с посещаемостью 20-25 тыс в день НЕСКОЛЬКО серверов ? Или там весь контент динамический и не подлежит кешированию ?
 
20-25 тыс в день хитов или хостов?
Если первое, то это мизерная посещаемость, для которой достаточно одного слабенького сервера.
Если второе, то это ни о чем не говорит, так что укажи ожидаемое число хитов.
 
Конечно хостов.
Все в динамике. (порядка 95-98 процентов всего контента)
 
В таком случае, надо знать "особенности данного ресурса". Иначе вряд ли можно тебе посоветовать что-то конкретное.

Также лучше, если будут конкретные вопросы по предполагаемым к применению технологиям. Про memcached и способы балансировки ты уже прочитал? :)
 
Планируется переделка большого ресурса с большой (20-25 тыс в день) посещяемостью. Планируеться использование связки php+mysql
Остро встал вопрос о необходимости использования нескольких выделенных машин в качестве веб-серверов и серверов БД.
Это все особенности.
Поворю - интересна любая инфа и том как спроектировать ресурс если у тебя не 1 сервер БД и не 1 веб-сервер, а несколько.
Ведь логично предположить что здесь есть свои особенности, тонкости и подводные камни...

-~{}~ 04.05.05 15:48:

Автор оригинала: fixxxer
Про memcached и способы балансировки ты уже прочитал? :)
Нет
Ссылочку можно?
 
Спасибо, но немного не то.
Вообще больше интересует вопрос реализации на php+mysql
 
Это как раз то. :)
На MySQL/InnoDB+memcached, например, работает ЖЖ.
Или ты собрался кэширование и кластеризацию средствами php делать? :D
 
Автор оригинала: fixxxer
Это как раз то. :)
На MySQL/InnoDB+memcached, например, работает ЖЖ.
Или ты собрался кэширование и кластеризацию средствами php делать? :D
Что-то я немного запутался. :o
Вероятно нам не нужен размах ЖЖ.
Хотя именно эту модель хлчу взять за основу.

Но возвращаясь к проблеме:
ты считаешь чот средствами пхп этого сделать нельзя?
 
fixxxer
там используется и то и другое
в 03 был только myisam, потом порт.
а глючит до сих пор :Р
 
смотря какой бюджет проекта, когда работал в auto.ru для особо нагруженных проектов использовали сервер под БД и два сервера под apache, нагрузку на эти сервера распределяла железяка от radware ( http://www.radware.com/content/products/wsd/default.asp ). все отлично работало под большой нагрузкой, например тот же cars.auto.ru :)
 
Автор оригинала: myDolphin
Мои поиски на данную тему натолкнули меня только на пару статей в инете

Статья о ЖЖ

Статья о WikiPedia
А поиски не натолкнули тебя на информацию, что оба этих ресурса недавно лежали: в обоих случаях Самая Надёжная ОпенСорс СУБД не смогла подняться после выключения питания и пришлось поднимать бэкапы?
 
myDolphin
прогугли термин "share nothing architecture".

ещё есть какой-то документ по архитектуре Flickr.
но там, на мой взгляд, совсем уже дичь написана.
тем не менее, почитать стоит.
 
жж - более свежие данные
http://www.danga.com/words/2005_mysqlcon/mysql-slides-2005.pdf
 
жж - более свежие данные
http://www.danga.com/words/2005_mysqlcon/mysql-slides-2005.pdf
Весьма интересная презентация. И главное - без малейшего намека на marketing shit. Информация предоставлено в максимально ясном виде и начисто лишена специальных терминов, "модных" и "заумных" словесных оборотов, коими грешат многие (псевдо)научные доклады.

Вообще, мне очень понравились проекты, разработанные командой danga. Кроме широко известного memcached, они разработали следующие инструменты, чрезвычайно полезные в проектах с высокой нагрузкой:
http://www.danga.com/perlbal/ - веб-сервер и load balancer в одном лице, написанный на perl
http://www.danga.com/mogilefs/ - файловая система, оптимизированная для хранения частозапрашиваемых объектов
 
А поиски не натолкнули тебя на информацию, что оба этих ресурса недавно лежали: в обоих случаях Самая Надёжная ОпенСорс СУБД не смогла подняться после выключения питания и пришлось поднимать бэкапы?
PG умеет востановить данные если в случае пропадания питания они не были записаны на диск по причине включенного writeback кеша на дисках ?
 
Сверху