🗊NodeJS Эффективное программирование Юра Богданов технический директор и соучредитель Eventr

Категория: Технологии
Нажмите для полного просмотра!
NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №1NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №2NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №3NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №4NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №5NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №6NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №7NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №8NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №9NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №10NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №11NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №12NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №13NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №14NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №15NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №16NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №17NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №18NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №19NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №20NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №21NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №22NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №23NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №24NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №25NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №26NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №27NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №28NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №29NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №30NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №31NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №32NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №33NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №34NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №35NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №36NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №37NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №38NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №39NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №40NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №41NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №42NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №43NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №44NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №45NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №46NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №47NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №48NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №49NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №50NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №51NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №52NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №53NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №54NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №55NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №56NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №57NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №58NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №59NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №60NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №61NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №62NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №63NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №64NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №65NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №66NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №67NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №68NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №69NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №70NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №71NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №72NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №73NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №74NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №75NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №76NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №77NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №78NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №79NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №80NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №81NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №82NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №83NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №84NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №85NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №86NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №87NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №88NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №89NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №90NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №91NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №92NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №93NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №94NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №95NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №96NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №97NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №98NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №99NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №100NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №101

Содержание

Вы можете ознакомиться и скачать NodeJS Эффективное программирование Юра Богданов технический директор и соучредитель Eventr. Презентация содержит 101 слайдов. Презентации для любого класса можно скачать бесплатно. Если материал и наш сайт презентаций Вам понравились – поделитесь им с друзьями с помощью социальных кнопок и добавьте в закладки в своем браузере.

Слайды и текст этой презентации


Слайд 1





NodeJS
Эффективное программирование 
Юра Богданов
технический директор и соучредитель Eventr
Описание слайда:
NodeJS Эффективное программирование Юра Богданов технический директор и соучредитель Eventr

Слайд 2





NodeJS
Цель проекта:
Описание слайда:
NodeJS Цель проекта:

Слайд 3





NodeJS
NodeJS – серверная JavaScript платформа
Использует Google V8 (Chromium: Google Chrome, Chrome OS, etc.)
Превращает V8 в мощную машину для серверных приложений
Сливается в гармонии с философией JavaScript
Молодой, но живой
Event loop - неблокирующий ввод/вывод
Все выполняется параллельно, кроме вашего кода
Описание слайда:
NodeJS NodeJS – серверная JavaScript платформа Использует Google V8 (Chromium: Google Chrome, Chrome OS, etc.) Превращает V8 в мощную машину для серверных приложений Сливается в гармонии с философией JavaScript Молодой, но живой Event loop - неблокирующий ввод/вывод Все выполняется параллельно, кроме вашего кода

Слайд 4





Для чего подходит NodeJS
Много I/O + большая конкурентность
RIA — «богатые» приложения
API
Proxy
Realtime
Чаты
Онлайн игры
Трансляции
Publish/Subscribe
Описание слайда:
Для чего подходит NodeJS Много I/O + большая конкурентность RIA — «богатые» приложения API Proxy Realtime Чаты Онлайн игры Трансляции Publish/Subscribe

Слайд 5





Event loop
Это цикл (libev)
Это один процесс, один поток
Выполняет одну задачу на один момент времени
Ожидает события параллельно (libeio, pooled threads)
В каждой итерации последовательно запускает функции-колбэки из трех разных очередей:
nextTick функции
Таймеры (setTimeout, setInterval)
Сигналы ввода/вывода (libeio)
Завершает работу, если все очереди пусты
Описание слайда:
Event loop Это цикл (libev) Это один процесс, один поток Выполняет одну задачу на один момент времени Ожидает события параллельно (libeio, pooled threads) В каждой итерации последовательно запускает функции-колбэки из трех разных очередей: nextTick функции Таймеры (setTimeout, setInterval) Сигналы ввода/вывода (libeio) Завершает работу, если все очереди пусты

Слайд 6





Время
CPU – процессорное время
Интерпретация кода
Бизнес-логика приложения, алгоритмы
Рендеринг шаблонов
I/O – время ввода/вывода
Запросы в базу данных (network)
Чтение файлов
Чтение кэша
Описание слайда:
Время CPU – процессорное время Интерпретация кода Бизнес-логика приложения, алгоритмы Рендеринг шаблонов I/O – время ввода/вывода Запросы в базу данных (network) Чтение файлов Чтение кэша

Слайд 7





Упрощенный пример
сценария веб-приложения

На самом деле, у нас много I/O и много логики
<?php
$user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms
$html = renderUser($user); // CPU - 30ms
Описание слайда:
Упрощенный пример сценария веб-приложения На самом деле, у нас много I/O и много логики <?php $user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms $html = renderUser($user); // CPU - 30ms

Слайд 8





<?php
<?php
$user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms
$html = renderUser($user); // CPU - 30ms
Описание слайда:
<?php <?php $user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms $html = renderUser($user); // CPU - 30ms

Слайд 9





<?php
<?php
$user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms
$html = renderUser($user); // CPU - 30ms
Описание слайда:
<?php <?php $user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms $html = renderUser($user); // CPU - 30ms

Слайд 10





Blocking I/O
Описание слайда:
Blocking I/O

Слайд 11


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №11
Описание слайда:

Слайд 12


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №12
Описание слайда:

Слайд 13


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №13
Описание слайда:

Слайд 14





Event Loop
Описание слайда:
Event Loop

Слайд 15





Event Loop
Описание слайда:
Event Loop

Слайд 16





Event Loop
Описание слайда:
Event Loop

Слайд 17





<?php
<?php
$user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms
$html = renderUser($user); // CPU - 30ms
Описание слайда:
<?php <?php $user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms $html = renderUser($user); // CPU - 30ms

Слайд 18





<?php
<?php
$user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms
$html = renderUser($user); // CPU - 30ms
Описание слайда:
<?php <?php $user = $db->query('SELECT * FROM users WHERE id=1'); // I/O - 70ms $html = renderUser($user); // CPU - 30ms

Слайд 19





Первый запрос
Описание слайда:
Первый запрос

Слайд 20





Второй запрос, после 10ms
ожидает выполнения первого
Описание слайда:
Второй запрос, после 10ms ожидает выполнения первого

Слайд 21





Третий запрос, после 50ms
ожидает выполнения первого и второго
Описание слайда:
Третий запрос, после 50ms ожидает выполнения первого и второго

Слайд 22


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №22
Описание слайда:

Слайд 23


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №23
Описание слайда:

Слайд 24


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №24
Описание слайда:

Слайд 25


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №25
Описание слайда:

Слайд 26


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №26
Описание слайда:

Слайд 27


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №27
Описание слайда:

Слайд 28


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №28
Описание слайда:

Слайд 29


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №29
Описание слайда:

Слайд 30


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №30
Описание слайда:

Слайд 31


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №31
Описание слайда:

Слайд 32





Время CPU vs I/O
RIA трэнд
Описание слайда:
Время CPU vs I/O RIA трэнд

Слайд 33





Приложение
Описание слайда:
Приложение

Слайд 34





Приложение
Описание слайда:
Приложение

Слайд 35





Приложение
Описание слайда:
Приложение

Слайд 36





Приложение
Описание слайда:
Приложение

Слайд 37





Приложение
Описание слайда:
Приложение

Слайд 38





Приложение
Описание слайда:
Приложение

Слайд 39





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 40





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 41





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 42





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 43





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 44





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 45





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 46





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 47





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 48





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 49





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello, World\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello, World\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 50





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    setTimeout(function(){
        res.end(‘World!\n’);
    }, 1000);
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.write(‘Hello,\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ setTimeout(function(){ res.end(‘World!\n’); }, 1000); res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.write(‘Hello,\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 51





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    setTimeout(function(){
        res.end(‘World!\n’);
    }, 1000);
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.write(‘Hello,\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ setTimeout(function(){ res.end(‘World!\n’); }, 1000); res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.write(‘Hello,\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 52





HTTP
var http = require(‘http’);
http.createServer(function(req, res){
    setTimeout(function(){
        res.end(‘World!\n’);
    }, 1000);
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.write(‘Hello,\n’);
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); http.createServer(function(req, res){ setTimeout(function(){ res.end(‘World!\n’); }, 1000); res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.write(‘Hello,\n’); }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 53





HTTP
var http = require(‘http’);
var i = 0;
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘i = ’ + i + ‘\n’);
    i++;
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); var i = 0; http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘i = ’ + i + ‘\n’); i++; }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 54





HTTP
var http = require(‘http’);
var i = 0;
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘i = ’ + i + ‘\n’);
    i++;
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); var i = 0; http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘i = ’ + i + ‘\n’); i++; }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 55





HTTP
var http = require(‘http’);
var i = 0;
http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘i = ’ + i + ‘\n’);
    i++;
}).listen(3080)
console.log(‘Server running at http://127.0.0.1:3080/’);
Описание слайда:
HTTP var http = require(‘http’); var i = 0; http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘i = ’ + i + ‘\n’); i++; }).listen(3080) console.log(‘Server running at http://127.0.0.1:3080/’);

Слайд 56





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 57





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 58





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 59





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 60





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 61





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 62





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 63





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 64





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 65





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 66





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 67





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 68





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 69





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 70





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 71





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 72





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 73





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 74





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 75





node-sync
Описание слайда:
node-sync

Слайд 76


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №76
Описание слайда:

Слайд 77


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №77
Описание слайда:

Слайд 78


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №78
Описание слайда:

Слайд 79


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №79
Описание слайда:

Слайд 80


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №80
Описание слайда:

Слайд 81


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №81
Описание слайда:

Слайд 82


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №82
Описание слайда:

Слайд 83


NodeJS Эффективное программирование   Юра Богданов  технический директор и соучредитель Eventr, слайд №83
Описание слайда:

Слайд 84





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 85





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 86





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 87





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 88





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 89





Callback-driven парадигма
Описание слайда:
Callback-driven парадигма

Слайд 90





Callback-driven решения?
Описание слайда:
Callback-driven решения?

Слайд 91





Масштабирование
Описание слайда:
Масштабирование

Слайд 92





Масштабирование
Описание слайда:
Масштабирование

Слайд 93





Масштабирование
Описание слайда:
Масштабирование

Слайд 94





HTTP Cluster
var http = require(‘http’), cluster = require(‘cluster’);
var server = http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello from ‘ + process.pid + ‘\n’);
});
cluster(server).listen(3080);
console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);
Описание слайда:
HTTP Cluster var http = require(‘http’), cluster = require(‘cluster’); var server = http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello from ‘ + process.pid + ‘\n’); }); cluster(server).listen(3080); console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);

Слайд 95





HTTP Cluster
var http = require(‘http’), cluster = require(‘cluster’);
var server = http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello from ‘ + process.pid + ‘\n’);
});
cluster(server).listen(3080);
console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);
Описание слайда:
HTTP Cluster var http = require(‘http’), cluster = require(‘cluster’); var server = http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello from ‘ + process.pid + ‘\n’); }); cluster(server).listen(3080); console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);

Слайд 96





HTTP Cluster
var http = require(‘http’), cluster = require(‘cluster’);
var server = http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello from ‘ + process.pid + ‘\n’);
});
cluster(server).listen(3080);
console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);
Описание слайда:
HTTP Cluster var http = require(‘http’), cluster = require(‘cluster’); var server = http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello from ‘ + process.pid + ‘\n’); }); cluster(server).listen(3080); console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);

Слайд 97





HTTP Cluster
var http = require(‘http’), cluster = require(‘cluster’);
var server = http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello from ‘ + process.pid + ‘\n’);
});
cluster(server).listen(3080);
console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);
Описание слайда:
HTTP Cluster var http = require(‘http’), cluster = require(‘cluster’); var server = http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello from ‘ + process.pid + ‘\n’); }); cluster(server).listen(3080); console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);

Слайд 98





HTTP Cluster
var http = require(‘http’), cluster = require(‘cluster’);
var server = http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello from ‘ + process.pid + ‘\n’);
});
cluster(server).listen(3080);
console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);
Описание слайда:
HTTP Cluster var http = require(‘http’), cluster = require(‘cluster’); var server = http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello from ‘ + process.pid + ‘\n’); }); cluster(server).listen(3080); console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);

Слайд 99





HTTP Cluster
var http = require(‘http’), cluster = require(‘cluster’);
var server = http.createServer(function(req, res){
    res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ });
    res.end(‘Hello from ‘ + process.pid + ‘\n’);
});
cluster(server).listen(3080);
console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);
Описание слайда:
HTTP Cluster var http = require(‘http’), cluster = require(‘cluster’); var server = http.createServer(function(req, res){ res.writeHead(200, { ‘Content-Type’ : ‘text/plain’ }); res.end(‘Hello from ‘ + process.pid + ‘\n’); }); cluster(server).listen(3080); console.log(‘Server at http://127.0.0.1:3080/ (pid: %d)’, process.pid);

Слайд 100





NodeJS
Описание слайда:
NodeJS

Слайд 101





Юра Богданов
Описание слайда:
Юра Богданов



Похожие презентации
Mypresentation.ru
Загрузить презентацию