ngserver and-collaboratived-development-between-san-francisco-and-tokyo
TRANSCRIPT
ngCoreGame Engine
JavaScript
iOS Android
native APIs native APIs N de
* Development Phase
Devicebind sources to
1 JS file
ngServerPowered by Node.js
Server
Smartphone development
N de ngCoreGame Engine
ngBuilderGame DevelopmentTool
300 2 4 6 8 10 12 14 16 18 20 22 24 26 28
100
0
10
20
30
40
50
60
70
80
90
time
CPU
unexpectedCPU SPIKES!!!
Suspects
#1 our code?#2 Node itself?#3 middleware?
6’6”
6’0”
5’6”
5’0”
4’6”
4’0”
3’6”
3’0”
6’6”
6’0”
5’6”
5’0”
4’6”
4’0”
3’6”
3’0”
6’6”
6’0”
5’6”
5’0”
4’6”
4’0”
3’6”
3’0”
6’6”
6’0”
5’6”
5’0”
4’6”
4’0”
3’6”
3’0”
Suspects
#1 our code?#2 Node itself?#3 middleware?
6’6”
6’0”
5’6”
5’0”
4’6”
4’0”
3’6”
3’0”
6’6”
6’0”
5’6”
5’0”
4’6”
4’0”
3’6”
3’0”
V8 GCwith bigger heap
Real.....
var http = require('http');http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});res.end('Hello World\n');
}).listen(1337, "127.0.0.1");
var data = [];for(var i=0;i<10000000;i++) { data.push({a:1,b:2,c:3,d:4});}
setInterval(function() {data.length;
},1000);
console.log('Server running at http://127.0.0.1:1337/');
https://gist.github.com/1851152
ngServerPowered by Node.jsArchitecture
Device Express MobageSocial APIsOAuth
Auth HeaderJSON
Controller
Model
memcacheTokenstore
mongodb
MySQL
Datastore
JSON
routing
rendering
queue
job
ngServerPowered by Node.jsFunctions
ngServer commandModels and Controllers
MobageAPIproject template (generator)
profilerbenchmarking
analytics (abacus)debug
hot-reload
Storage
StoragengServer
ngServerPowered by Node.jsDeployment
HAProxy ngServer StorageHAProxy
Cache
Storagequeue
1 ngServer process per 1 cpu core
Challenges
SFTKawesome! great!
LGTM!!!my suggestion is...
SUPER!! WORTH!!EXCELLLLLENT!!!another way is...
:D:D