Concurrency - Parallel requests Go var
cx
chan
string
=
make(chan
string) var
cy
chan
string
=
make(chan
string) go
requestValue("/x",
cx) go
requestValue("/y",
cy) x
:=
<-‐cx y
:=
<-‐cy processConcat(x,
y)
#
Run
benchmark ab
-‐n
10000
-‐c
100
http://127.0.0.1:8100/ Node.js FATAL
ERROR:
(...)
process
out
of
memory Go Time
taken
for
tests:
20.689
seconds Complete
requests:
10000 #
No
problems
Static typing (+ IMO) + More robust + Easier to refactor + Less tests + Compiler can go crazy with optimisations + Still flexible (with interfaces) + No ceremony