3. @NakedN3rd#Devoxx #GoingGlobal
Latency costs
Roundtrip from Asia to Europe adds
500ms latency to every request.
In a Google experiment in 2006, increasing page load time from
0.4s to 0.9s resulted in 20% lower traffic and revenue.
12. @NakedN3rd#Devoxx #GoingGlobal
Helloworld
● A simple demo webapp.
● Written in Go, no OS dependencies.
● 12 factor.
● /hello Says hello and counts how many times.
● /health endpoint returns health
● /fs/... serves filesytem
https://github.com/bastiaanb/helloworld
16. @NakedN3rd#Devoxx #GoingGlobal
Nomad Datacenters
“Nomad models infrastructure as regions and datacenters. Regions may
contain multiple datacenters. Servers are assigned to regions and manage all
state for the region and make scheduling decisions within that region.
Requests that are made between regions are forwarded to the appropriate
servers.As an example, you may have a US region with the useast1 and
uswest1 datacenters, connected to the EU region with the eufr1 and
euuk1 datacenters.”
17. @NakedN3rd#Devoxx #GoingGlobal
Consul Datacenters
“we define a datacenter to be a networking environment that is
private, low latency, and high bandwidth.This excludes
communication that would traverse the public internet, but for our
purposes multiple availability zones within a single EC2
region would be considered part of a single datacenter.”
Our goal: Creating a global datacenter that is highly available, super scalable and responsive.
With ‘highly available’ we mean: can widthstand loss / failure of single processes, but also compute nodes, complete availability zones or even regions.
With ‘super scalable’ we mean that we can scale up capacity multiple orders of magnitude without having to change the architecture.
With ‘responsive’ we mean that we want requests to be served by a server that is ‘near’ the client. Ergo US users get serviced by a US datacenter, European users by a European one.