Мастер-класс по Highload: Разработка крупного масштабируемого web 2.0 проекта с нуля
Запись на мастер-класс (8 часов) по Highload, 14 декабря 2010 года, Санкт-Петербург
--------------------------------------------------------------------- Разработка крупного масштабируемого web 2.0 проекта с нуля /соц. сеть на 100 млн пользователей/ --------------------------------------------------------------------- О докладчике: Дмитрий Бородин, ИТ-директор компании Сонетика.Целевая аудитория: Программисты (PHP, Java, Ruby, Python), администраторы и архитекторы ПО, которые планируют построить крупный масштабируемый проект: соц.сеть или web 2.0 функционал, крупный блог, СМИ, веб-магазин и т.д. Любой проект, где будут десятки миллионов сущностей (пользователей, товаров, статей, веток обсуждения, других объектов). Если вы уже разрабатываете проект, то сможете обсудить его архитектуру и пути ее доработки до масштабируемой модели. Не важно, на каком языке программирования и базе данных (MySQL/PostgreSQL) вы создаете ваш проект - технологии масштабирования и highload практически одинаковы.Цели обучения:
Запись на мастер-класс: http://sonetica.ru/highload.html 14 декабря 2010 года, Санкт-Петербург. Бонус: дополнительная статья об архитектуре ВКонтакте по итогам прошедшей конференции Highload++: http://spb-borodin.livejournal.com/596.html *** Народ, большая просьба ко всем запостить себе в твиттер (от себя), статус контакта/фейсбука или блог: Мастер-класс по #Highload, 14 декабря, Питер: "Построение крупного масштабируемого web 2.0 проекта на 100млн юзеров" - http://sonetica.ru/HL *** Спасибо за внимание :) |
удалено.
|
Места нет, т.к. неизвестно число людей. Залов для проведения конференций очень много и они пустые, арендовать не проблема.
> срубить бабла. Не смешите... Вряд ли я получу с этого мероприятия доход больше 20% от месячной зп. Просто на конференциях я выступаю бесплатно для себя, оплачивая из своего кармана билеты и проживание. > Ведь получается что у большинства просто не будет возможности применить то, что вы расскажите. Это глубокое заблуждение. Когда проект будет крупным, то эти вопросы будут не существенны. Кроме того, мы не платим ни копейки за 100 серверов и канал. Ваша задача научится строить архитектуру, а не хостинг считать. |
удалено.
|
удалено.
|
1. Есть ряд неправильных вопросов, проблема оплаты хостинга одна из них. Дискутировать не буду.
См http://spb-borodin.livejournal.com/596.html 1ю часть. 2. Ничто не мешает заниматься оптимизацией, чтобы снизить затраты на хостинг. Для мелкого и бесплатно проекта это актуально. Для всех крупных - нет. Любая реклама от проекта сразу окупает хостинг. 3. Обучение нужно всем, кто хочет научится программировать. Хайлод, хостинг и т.д. здесь вообще не причем. Я учу, как освободить свой разум и проектировать задачи кардинально по другому. Например, никто с мемкешем не умеет работать. А то, что все называют работой - это где-то 1% того, что можно и нужно уметь с ним сделать. В инете статьи про мемкеш - поверхностны и ни о чем. |
Более обосновано напишу в следующей статье, собрав отзывы и массовые сомнения - я нафига мне этот мастер-класс :)
В частности, во время мастер-класса, одна из моих важных задач разъяснить, почему то, о чем я вещаю, касается каждого слушателя лично. А то многие на конференциях сидят с лицом "это меня не касается". И оно на 80% всех коснется, я гарантирую. |
Цитата:
Цитата:
Что конкретно вы предлагаете - теория или все действия работы с кодом будут как-то визуализиваться? |
5-е место:
http://www.liveinternet.ru/rating/ru/meeting/ > Что конкретно вы предлагаете Моя главная задача - научить вас думать. Чтобы остальное вы сами при необходимости додумали. Да, будет не легко - взрыв мозга. |
удалено.
|
> Я пишу CMS
Смысл моего доклада объяснить, что ООП и конкретный функционал вашего проекта не играет никакой роли. В мире делают очень много фреймворков, где играются с ООП (программирование ради программирования). Я же пропагандирую мысль, что нужно думать о другом. А именно, как устроить архитектуру проекта. Как из обычных инструментов mysql+memcache+redis родить нечто новое, благодаря совершенно иным паттернам программирования/архитектуры (не путайте с ООП). Если вам не интересно это, вы хотите делать CMS и прочие традиционные бизнес-задачи, то мой доклад вам в этих задачах не поможет. На 10.000 юзеров заботится о масштабировании не нужно. Обычный программист без проблем все сделает. Порог роста, после которого все загнется, где-то от 50.000 до 250.000 пользователей. Но все же, освоить масштабирование и применять его даже в мелких проекта - это не так сложно/накладно, как кажется. Хотя некоторые программисты, чуть ли не со слезами на глазах пытаются доказать, что это все туфта, когда я их учу работать по другому. А уж какой вой в хабре поднимится от хомячков, когда туда статью зальют... Боюсь даже подумать. Программисты меняются на глазах за 3-6 месяцев, как только масштабирование осваивают. Это типичный антипаттерн "боюсь освоить новое". И обратно в традиционному программированию уже никто не вернется, это как наркотик и темная сторона силы =) |
удалено.
|
удалено.
|
Я упомянул ООП для сравнения. Сейчас в среде программистов считается очень крутым поговорить об особенностях известных фреймворках. Устроить дебаты академиков - какой из них лучше.
Это все - несущественные вопросы. Лет 20 назад торжествовал процедурный подход в программировании. Его сменило объектно-ориентированное. Сейчас наступает новая эра. Не знаю, как ее назвать, но суть ее - как хранить данные, ибо их много и только от этого зависит успех проекта. Именно этому я и учу. Это даже не совсем программирование. Применить знания можно на любом хостинге с шеллом, где вы сможете лично запустить пару интансов мемкеша, редиса и прочего. |
Честно не знаю что бы я делал если трафик на моем проекте превысил бы порог посещаемости в 50к :)
И мне на самом деле очень интересно что в этих случаях бывает, понятно что менять архитектуру, использовать кеширование, нормализировать базу, провести рефакторинг кода при не обходимости и отказаться от MySQL (причем в связи с последними событиями) но это только предположения основанные личном опыте и статьях хабра... доп. а есть ли у вас в планах записать выступление, а то не все в СПб живут? |
удалено.
|
Теперь в MySQL Classic Edition нет поддержки InnoDB (дополнительно $2000!)
А следовательно менее эффективное: использование CPU, автоматическое восстановление после сбоев, отсутствие построчных блокировок, внешних ключей, транзакций и пр. |
удалено.
|
InnoDB более развита
Цитата:
Но на серьезных проектах MyISAM я бы не рекомендовал использовать, потому что есть ряд существенных недостатков: - отсутствие самовосстановления по журналу при сбоях - отсутствие блокировок регионов, меньших, чем целые таблицы - отсутствие средств резервного копирования (на пример mysqldump) - для каждой таблицы создается один файл данных |
Попробуйте ExtraDB. Это тот же бесплатный innodb, только от другой компании (Перкона и Гугл). Работает в разы быстрее. По слухам... мы еще не применяли, но думаем попробовать.
|
удалено.
|
Цитата:
Цитата:
Цитата:
|
удалено.
|
Цитата:
|
Цитата:
Цитата:
Цитата:
|
Цитата:
|
удалено.
|
удалено.
|
Цитата:
Во-вторых, количество записей в таблице не основной показатель т.к. есть еще как минимум зависимость от структуры и объема данных, кеширование пр. В третьих, размер каждой из таблиц ограничивается лишь максимальным размером файла в ОС, и количество записей никак не лимитируется. Т.е. при нормальной оптимизации и разбиении записей в таблице (MyISAM) на несколько можно говорить что MyISAM с размером в 100 000 записей вполне пригодна для использования. Цитата:
|
Цитата:
|
удалено.
|
Часовой пояс GMT +3, время: 22:54. |