16 декабря, dev {highload} - конференция о highload веб-разработке,...
DESCRIPTION
16 декабря, DEV {highload} - конференция о Highload веб-разработке, "Highload и стартап на Java - как совместить?", Александр Константинов (основатель FriendRent, разрабочик в JetBrains) Аннотация Если долгое время создавал высоконагруженные и распределенные системы, а затем начал делать стартап, то в голове сразу же прорисовывается архитектура, которая должна быть у такого сервиса. Однако понятно, что создать за месяц большую и сложную систему - крайне затруднительно. Работая в Яндексе и JetBrains, мы накопили большой опыт разработки таких сервисов. В своём докладе я расскажу, как создать в стартапе архитектуру так, чтобы это заняло минимум времени, но при этом система могла бы легко выдержать миллион просмотров в месяц. От чего стоит отказаться, а на что наоборот следует обратить внимание, как упрощать систему, но при этом оставлять возможность расширения. Ключевые слова: Java, Spring, MySQL, JSP, Nginx. Биография Совладелец проекта FriendRent повященного аренде недвижимости через социальные сети. Senior Developer в компании JetBrains. В студенческие годы разрабатывал приложения для Вконтакте.TRANSCRIPT
Highload и стартап на Java -как совместить?
dev.it-portfolio.net2013
Что такое FriendRent?
• Сайт – http://friendrent.ru
• Найти жильё среди друзей и друзей друзей в ВК
• 500 тыс. просмотров
Подготовка
VK.com
Админка
MySQLRuntime
dev.it-portfolio.net
Кто мы?
• Александр Константинов – JetBrains
• Дмитрий Качмар – Яндекс
dev.it-portfolio.net
Процесс разработки
• В большом проекте
– Роли
– Судьба кода
– Методология
– 24/7
dev.it-portfolio.net
Процесс разработки
• В стартапе
– 24/7
– Роли: all in one
– Судьба кода: ship it earlier
– Методология под людей
dev.it-portfolio.net
Scaling в большом проекте
• Много машин
• Разные инстансы
• Сервисная структура
• Loadbalancing, clouds….
dev.it-portfolio.net
Scaling в стартапе
• 1 машина
• Сервисы
• Всегда найдётся узкое место!
• Логи
dev.it-portfolio.net
Система выкладки
• В большом проекте: release engineer.
• В стартапе:
– Часто это делается
– Muda
dev.it-portfolio.net
Система выкладки
• В большом проекте: release engineer.
• В стартапе:
– Часто это делается
– Muda
–Багов будет много!
dev.it-portfolio.net
Технологии
• В большом проекте стек задан
• Берите не модное, а известное вам!
• Свой фреймворк?
dev.it-portfolio.net
Технологии
• В большом проекте стек задан
• Берите не модное, а известное вам!
• Свой фреймворк?
• Будьте как взрослый!
– IOC
– VCS
dev.it-portfolio.net
Итого
• Логгинг
• Процесс для людей
• Оптимизируйте!
• Технологии под себя
• 1 человек = 100 ролей
dev.it-portfolio.net
Спасибо!
Вопросы?
dev.it-portfolio.net