SlideShare a Scribd company logo
Фронтенд разработчик
JavaScript
на фронте
и в тылу
Чистяков Денис
Я.Субботник, Екатеринбург, 6 июля
2013
Кто занимается
веб-разработкой?
2
На каких языках?
PHP, Python, JavaScript,
Node.js?
3
Бэкенд
Киоск с шавермой против ресторана
5
Киоск с шавермой против ресторана
6
Денис Чистяков — JavaScript на фронте и в тылу
Цели Node.JS
Разработать быстрый и легкий фреймворк:
• ориентированный на работу с сетью
• событийный
• способный исполнять JavaScript внутри себя
8
All You Need Is… File
• libUV
• epoll
• kqueue
• /dev/poll
• select
• …
• ???????
• PROFIT!
9
Event Loop
10
Схема работы
11
Почему Node.js?
• Быстрый
• JavaScript — самый популярный язык
программирования *
• Клиентский JS-программист может быстро
пересесть на серверный JS
• Удобный интерфейс для написания C/C++ –
биндингов
12
* 21% — по данным статистики github.com/languages
Архитектура
13
GET
Nginx
ProxyPass
Node.js
Worker
Worker
Worker
…
Worker
Node-Cluster
HTMLHTML
Роутинг
Intel Xeon E5-2660
2×8 ядер
8×8 Gb
16 рабочих процессов Node.js
150 rps на процесс
Сервера и нагрузка
14
Для сравнения, посещаемость
Е1  — 10 000 000 *
просмотров, т.е. ≈ 115 rps
15
* по данным статистики LiveInternet
Фронтенд
Денис Чистяков — JavaScript на фронте и в тылу
18
Браузер Сервер
1
2
1Node.js
JSON3 4
2
3
4
Различия
19
Бэкенд Фронтенд
File system Ajax
ECMAScript 5 i-ecma
controller.js —
Различия
20
Бэкенд Фронтенд
File system Ajax
ECMAScript 5 i-ecma
controller.js —
Различия
21
Бэкенд Фронтенд
File system Ajax
ECMAScript 5 i-ecma
controller.js —
НЕЛЬЗЯ ПРОСТО ВЗЯТЬ
И ПОЛОЖИТЬ
КОНТРОЛЛЕР НА КЛИЕНТ
23
Браузер Node.js
controller #1 controller #2
Что получили в итоге?
• Быстроотвечающий, отказоустойчивый сервис
• Максимальное реиспользование кода на клиенте и
сервере
• Гибкую настройку
24
Фронтенд разработчик
dench@yandex-team.ru
@denchistyakov
Спасибо!
Чистяков Денис

More Related Content

PDF
Проектирование архитектуры крупных веб-систем
PPT
ВВЕДЕНИЕ В NODE.JS
PDF
Moscow js node.js enterprise development
ODP
Архитектура программных систем на Node.js
PDF
JSLab.Тимур Шемсединов. "Архитектура программных систем на Node.js"
PDF
Дмитрий Дегтярев, "Хабикаса"
PDF
Микросервисы для Machine Learning / Дмитрий Ходаков (Avito)
PPTX
Александр Афенов
Проектирование архитектуры крупных веб-систем
ВВЕДЕНИЕ В NODE.JS
Moscow js node.js enterprise development
Архитектура программных систем на Node.js
JSLab.Тимур Шемсединов. "Архитектура программных систем на Node.js"
Дмитрий Дегтярев, "Хабикаса"
Микросервисы для Machine Learning / Дмитрий Ходаков (Avito)
Александр Афенов

What's hot (20)

PDF
DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
PDF
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
PDF
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
PDF
Микросервисы на практике
PPTX
Микросервисная Архитектура: проблемы и решения / Сергей Орлов (Avito)
PDF
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
PDF
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
PDF
Применение CQRS и EventSourcing в DDD-проекте
PDF
Badoo Desktop: оптимизация приложения на миллион юзеров онлайн
PDF
Порядок для скорости. Система структурирования фронтендовой части веб-приложе...
PPTX
Разработка high load системы на .NET Core
PDF
Дорога к микросервисной архитектуре
PDF
Денис Трифонов
PDF
Javascript-фреймворки:
 должен остаться только один
PDF
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
PPTX
Как мы данные готовили ORM и все-все-все в приложении Почта Mail.Ru / Кирилл ...
PPTX
vi stories: миграция на .NET Core
PPTX
Быстрый старт iOS приложения на примере iOS Почты Mail.Ru / Николай Морев (Ma...
PDF
Преимущества и недостатки микросервисной архитектуры в HeadHunter / Антон Ива...
PDF
Мониторинг быстродействия web-проекта / Владимир Буянов (Ultimate Guitar)
DUMP-2015 «Микросервисная архитектура в теории и на практике» Иван Бурмистров...
Владимир Русинов, Алексей Капранов "Яндекс.Диск: архитектура, синхронизация и...
Эволюция процесса деплоя в проекте / Денис Яковлев (2ГИС)
Микросервисы на практике
Микросервисная Архитектура: проблемы и решения / Сергей Орлов (Avito)
Доклад Виталия Котова на конференции LoveQA. "Selenium тесты. От RC и одного ...
«Детские болезни live-чата» Ольга Сентемова, Тинькофф Банк
Применение CQRS и EventSourcing в DDD-проекте
Badoo Desktop: оптимизация приложения на миллион юзеров онлайн
Порядок для скорости. Система структурирования фронтендовой части веб-приложе...
Разработка high load системы на .NET Core
Дорога к микросервисной архитектуре
Денис Трифонов
Javascript-фреймворки:
 должен остаться только один
«Микросервисы наносят ответный удар!» Олег Чуркин, Rambler&Co
Как мы данные готовили ORM и все-все-все в приложении Почта Mail.Ru / Кирилл ...
vi stories: миграция на .NET Core
Быстрый старт iOS приложения на примере iOS Почты Mail.Ru / Николай Морев (Ma...
Преимущества и недостатки микросервисной архитектуры в HeadHunter / Антон Ива...
Мониторинг быстродействия web-проекта / Владимир Буянов (Ultimate Guitar)
Ad

Similar to Денис Чистяков — JavaScript на фронте и в тылу (20)

PDF
Mobile Web Apps development essentials
PDF
2015-12-05 Сергей Аверин - Javascript-фреймворки: должен остаться только один
PDF
TК°Conf. Организация разработки Frontend. Виталий Слободин.
PPTX
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
PPTX
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
PPTX
разработка корп приложений на платформе 1с 8
PPT
Platypus platform ivbit
PDF
Desktop app based on node js and html5
PDF
Павел Юрийчук - Разработка приложений под мобильные браузеры
PPTX
Delivering Native User Experience In Client Side Java Applications
PPTX
Diplom 1
PPTX
Secr15 разработка кросс платформенных десктоп приложений nw.js
PDF
Javascript-фреймворки: должен остаться только один / Аверин Сергей (Acronis)
PPTX
What's new in Visual Studio 2012
PPT
Node.JS: возможности для РНР-разработчика
PDF
Фронтенд в Яндексе
PPTX
Преимущества создания кроссплатформенных приложений с использованием Phone ga...
PDF
React Native в продакшне
PDF
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
PDF
Mobile Web Apps development essentials
2015-12-05 Сергей Аверин - Javascript-фреймворки: должен остаться только один
TК°Conf. Организация разработки Frontend. Виталий Слободин.
Unity: WebGL и IL2CPP — будущее скриптинга в Unity»
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
разработка корп приложений на платформе 1с 8
Platypus platform ivbit
Desktop app based on node js and html5
Павел Юрийчук - Разработка приложений под мобильные браузеры
Delivering Native User Experience In Client Side Java Applications
Diplom 1
Secr15 разработка кросс платформенных десктоп приложений nw.js
Javascript-фреймворки: должен остаться только один / Аверин Сергей (Acronis)
What's new in Visual Studio 2012
Node.JS: возможности для РНР-разработчика
Фронтенд в Яндексе
Преимущества создания кроссплатформенных приложений с использованием Phone ga...
React Native в продакшне
Zabbix: Прошлое, настоящее и будущее (Zabbix: Past, present and the future)
Ad

More from Yandex (20)

PDF
Предсказание оттока игроков из World of Tanks
PDF
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
PDF
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
PDF
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
PDF
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
PDF
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
PDF
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
PDF
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
PDF
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
PDF
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
PDF
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
PDF
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
PDF
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
PDF
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
PDF
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
PDF
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
PDF
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
PDF
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
PDF
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
PDF
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...
Предсказание оттока игроков из World of Tanks
Как принять/организовать работу по поисковой оптимизации сайта, Сергей Царик,...
Структурированные данные, Юлия Тихоход, лекция в Школе вебмастеров Яндекса
Представление сайта в поиске, Сергей Лысенко, лекция в Школе вебмастеров Яндекса
Плохие методы продвижения сайта, Екатерины Гладких, лекция в Школе вебмастеро...
Основные принципы ранжирования, Сергей Царик и Антон Роменский, лекция в Школ...
Основные принципы индексирования сайта, Александр Смирнов, лекция в Школе веб...
Мобильное приложение: как и зачем, Александр Лукин, лекция в Школе вебмастеро...
Сайты на мобильных устройствах, Олег Ножичкин, лекция в Школе вебмастеров Янд...
Качественная аналитика сайта, Юрий Батиевский, лекция в Школе вебмастеров Янд...
Что можно и что нужно измерять на сайте, Петр Аброськин, лекция в Школе вебма...
Как правильно поставить ТЗ на создание сайта, Алексей Бородкин, лекция в Школ...
Как защитить свой сайт, Пётр Волков, лекция в Школе вебмастеров
Как правильно составить структуру сайта, Дмитрий Сатин, лекция в Школе вебмас...
Технические особенности создания сайта, Дмитрий Васильева, лекция в Школе веб...
Конструкторы для отдельных элементов сайта, Елена Першина, лекция в Школе веб...
Контент для интернет-магазинов, Катерина Ерошина, лекция в Школе вебмастеров ...
Как написать хороший текст для сайта, Катерина Ерошина, лекция в Школе вебмас...
Usability и дизайн - как не помешать пользователю, Алексей Иванов, лекция в Ш...
Cайт. Зачем он и каким должен быть, Алексей Иванов, лекция в Школе вебмастеро...

Денис Чистяков — JavaScript на фронте и в тылу