implementing microservicesgotocon.com/dl/goto-amsterdam-2015/slides/...Rapid Provisioning Basic...

Post on 01-Oct-2020

3 views 0 download

Transcript of implementing microservicesgotocon.com/dl/goto-amsterdam-2015/slides/...Rapid Provisioning Basic...

implementing microservicesRemmelt Pit@remmelt_remmelt@info.nl

since2003

12,000auctions

~2M uniquevisitors/month

modularsite & admin & API

trouble!scalability

trouble!stability

basicallywe wanted to go faster

Rapid ProvisioningBasic MonitoringRapid App DeploysDevOps Culture— Martin Fowler

tech challenge #1getting started

RTFM

RTFMWTFM

acceptance criteria:

API endpoint: GET /highestbid → json

Events: BidAcceptedEvent{ ..., "bid_amount":12.34, ... }

tech challenge #2monolith first?

distributed monolith— Tareq Abedrabbo

tech challenge #3building things

#! /bin/sh

IMAGE=bvaauctions/auction-queryTAG=$(git rev-parse --short HEAD)

docker run --rm \ -v "$PWD":/usr/src/project \ -w /usr/src/project \ -v "$HOME"/.m2:/root/.m2 \ maven:3.3-jdk-8 \ mvn -B clean verify

docker build -t $IMAGE:$TAG .docker push $IMAGE:$TAG

tech challenge #4monitoring

tech challenge #5hidden complexity

ls -l | grep "str" | wc -l

services with theguts on the outside— Gartner

tech challenges

1. getting started → start small2. monolith first? → iterate quickly3. building things → automate4. monitoring → aggregate & visualise5. hidden complexity → be aware

TODO

—chaos monkey—failure modes (simulate slow network)—mesos/coreos/kubernetes?—kpi monitoring—bulkheads, circuit breakers—e2e testing with fake data in

production

Q?