jakub mrowiec (grand parade poland) - monumentum case study

Post on 23-Jan-2018

317 Views

Category:

Mobile

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

StartLab #6Real-time web apps

MomentumCase Study

wydajnosc aplikacji WYZWANIA

~ 5032

10

operacji na sekunde dla jednego dostawcy

dostawcow w POC

sporty w POC

potencjalnie obslugiwanych

ilu dostawcow tyle kanalowWYZWANIA

szybkie wyszukiwanie danychWYZWANIA

cacheEvent.aquire({id: eventId}, function(err, event) {var teamName = '';if (event !== null) {

var runners = event.model.runners;if (typeof runners[team] !== 'undefined') {

teamName = runners[team].name;}

}

// ...

try {dispose(cacheElementPeriod);

} catch(errror) {// ...

}});

latwosc rozszerzalnosciWYZWANIA

nowy dostawcanowy sport

wieksza dokladnosc meczów WYZWANIA

zwiększona ilosc incydentówdokladniejsze opisanie stanu meczu

NASZE ROZWIĄZANIE

NASZE ROZWIAZANIE redis

More than just a key value datastore

70 000 req/sec publish/subscribe

NASZE ROZWIAZANIE mikroserwisy

NASZE ROZWIAZANIE mikroserwisy

HTTP ENDPOINT(dane via POST)

DATA PARSER

MOMENTUM(calculator)

STATISTICS(calculator)

MAPPER

MARKETS

NASZE ROZWIAZANIE mikroserwisy

HTTP ENDPOINT(dane via POST)

DATA

STORE PER EVENT

PUBLISH NEW DATA

STORE RAW DATA

NASZE ROZWIAZANIE mikroserwisy

DATA PARSER

TENNIS FOOTBALL

Djokovic vs Nadal Barcelona vs Arsenal

Score: 2:0Extra: 6:3, 6:4

Score: 5:1

Sun Rain

All England Tennis and Croquet Club

Wembley

Set wygrany Goal

NASZE ROZWIAZANIE mikroserwisy

MOMENTUM(calculator)

require(‘strategy.js’);

NASZE ROZWIAZANIE mikroserwisy

STATISTICS(processor)

STATISTICS PROCESSOR

EVENT DATA

(IN)MATCH STATS

(OUT)

NASZE ROZWIAZANIE mikroserwisy

MARKETS

MARKETS (PROCESSOR/SELECTOR)

var tasks = [‘SelectMarket'];

var taskFactory = {};for (var i = 0; i < tasks.length; i++) {

var taskName = tasks[i];var task = require('./tasks/' + taskName + '.js');taskFactory[taskName] = task;

}

NASZE ROZWIAZANIE mikroserwisy

MAPPER

ARSENAL

VS

BARCELONA

8732482

673273

football-event-192-932598

001336505

4623238

TCP

PODSUMOWANIE

Redis – szybki zapis/odczyt

PODSUMOWANIE

Redis – publish/subscribe

PODSUMOWANIE

Mikroserwisy – latwa skalowalnosc

PODSUMOWANIE

Javascript – modulowosc

PODSUMOWANIE

Javascript – uniwersalnosc (http/socket)

PODSUMOWANIE

Javascript – szybkosc/async

StartLab #6Real-time web apps

Jakub MrowiecM: jakub.mrowiec@grandparade.co.ukS: alkagar

Q&A

top related