Доступен перевод (http://www.insight-it.ru/net/scalability/arkhitektura-friend.../) интервью с разработчиками сервиса Friend for Sale, входящего в десятку лучших приложений Facebook. Сервис построен на базе Ruby on Rails, обрабатывая около 200 запросов в секунду и поддерживая около 600 тысяч активных пользователей, опровергает бытующее мнение о плохой масштабируемости этой платформы.
Работу сервиса обеспечивают: 4 сервера баз данных, 6 серверов приложений, 1 демонстрационный сервер и 1 сервер для балансировки нагрузки:
- Каждый из серверов приложений содержит 4 ядра и 8 GB оперативной памяти.
- На каждом из них работает 16 сервисов mongrel (в сумме - 96).
- 4 GB оперативной памяти на каждом из них отведено под memcached.
- Сервера баз данных имеют более серьезное оборудование: при тех же 4-х ядрах, они имеют 32 GB оперативной памяти и RAID 10 массив из четырех 15000rpm SCSI дисков, работающих в режиме master-slave.
- Программная платформа Ruby on Rails, в том числе приложения на Ruby:
- Распределенный сервер очередей - Starling (http://rubyforge.org/projects/starling/);
- Разделение операций чтения и записи между серверами - Magic Multi-Connections Gem (http://magicmodels.rubyforge.org/magic_multi_connections/);
- В качестве операционной системы используется CentOS (64-bit);
- СУБД MySQL;
- Балансировка нагрузки - nginx;
- Кэширование - Memcached;
- Для обновлений и перезапусков серверов задействовано ПО Capistrano (http://www.capify.org/getting-started/rails);
- Мониторинг - Pingdom (http://tools.pingdom.com/);
URL: http://www.insight-it.ru/net/scalability/arkhitektura-friend.../
Новость: http://www.opennet.me/opennews/art.shtml?num=14802