SlideShare a Scribd company logo
Our	journey	to	world	(gi1ing)	domina5on:	
How	notonthehighstreet.com	embraced	Docker	
Nic	Jackson	(@sheri>ackson)	
Daniel	Bryant	(@danielbryantuk)
Who	Are	We?	
20/11/15	 @sheri>ackson	|	@danielbryantuk	
•  Daniel	Bryant		-	Chief	Scien5st	at	OpenCredo	
ü  Digital/technical	transforma5ons	
ü  Java,	Golang,	CI/CD,	DevOps,	cloud,	containers	
ü  Maintainer	of	muservicesweekly.com	
•  Nic	Jackson	–	Dev	Manager	at	notonthehighstreet.com	
ü  Powering	technical	excellence	through	people	
ü  Ruby,	Go,	cloud,	containers,	leadership,	mentoring	
ü  Organiser	of	Wild	West	Tech	Talks
1. Setting the Scene
20/11/15	 @sheri>ackson	|	@danielbryantuk
www.notonthehighstreet.com	
20/11/15	 @sheri>ackson	|	@danielbryantuk
“Stop	us	if	you’ve	heard	this	before…”	
•  So,	back	in	2014	we	had…	
– Ruby	on	Rails	monolith	“The	MonoNOTH”	
– Deployment	within	a	private	‘cloud’	
– A	‘complex’	architecture	
– Some	delays	in	building	new	func5onality	
– 99	problems,	but	CI/CD	ain’t	one…	
20/11/15	 @sheri>ackson	|	@danielbryantuk
On	the	Flipside…	
•  We	also	had…	
– A	great	business	
– A	fantas5c	tech	team	
– A	culture	of	experimenta5on	
– A	desire	for	change…	
20/11/15	 @sheri>ackson	|	@danielbryantuk
2. Time for a 're-Platform'
20/11/15	 @sheri>ackson	|	@danielbryantuk
Word	of	Cau5on:	Evalua5on	
	
“I	will	postpone	using	this	shiny	new	framework	
un6l	my	peers	have	validated	the	proposed	benefits	
with	rigorous	scien6fic	experiments”	
	
	-	Said	by	no	developer	
	…ever	
20/11/15	 @danielbryantuk
Ini5al	R&D	Led	to…	
•  Docker	
•  Mesos,	Marathon	and	Chronos	
•  AWS	(vs	Google)	
•  Data	stores	and	middleware	
–  RDS,	but	RabbitMQ	container	
•  Consul	and	consul-template	
•  Ansible	(vs	Puppet)	
•  CloudForma5on	(vs	Terraform)	
•  Packer	
20/11/15	 @sheri>ackson	|	@danielbryantuk
MonoNOTH-in-a-box?	
Obviously	new	microservices	would	be	containerised,	but	what	
about	the	‘legacy’	(money-making)	applica>on?	
	
	
AAer	careful	and	reasoned	debate	we	concluded…	
20/11/15	 @sheri>ackson	|	@danielbryantuk
20/11/15	 @sheri>ackson	|	@danielbryantuk
And	thus,	a	new	world	was	born…	
20/11/15	 @sheri>ackson	|	@danielbryantuk
20/11/15	 @sheri>ackson	|	@danielbryantuk
3. The New World - From Dev to Prod
20/11/15	 @sheri>ackson	|	@danielbryantuk
Working	Locally	Was	Challenging	
20/11/15	 @sheri>ackson	|	@danielbryantuk
20/11/15	 @sheri>ackson	|	@danielbryantuk	
www.opencredo.com/2015/10/31/javaone-building-a-
microservice-development-ecosystem-video
Building	Services	
•  Stubs	-	Wiremock	(accuREST	for	Spring)	
•  (Consumer-based)	Contracts		-	Pact	Ruby	and	Pact	JVM	
•  Lease	your	own	QA	environment	(spot	instances?)	
•  Tooling	
–  ‘borg’	CLI	tool	
–  ‘local-microservices’	project	
20/11/15	 @sheri>ackson	|	@danielbryantuk
4. Pain Points
20/11/15	 @sheri>ackson	|	@danielbryantuk
Ini5al	S5cking	Points	
•  Crea5ng	a	Docker	registry	
•  Networking	from	office	(VPN)	
•  Service	discovery	
–  Bamboo	vs	registrator	
–  srv_router	(dynamic	lua	–	not	so	‘dynamic’)	
•  The	‘underscores	vs	hyphens’	clone	war	
•  Monitoring	all	the	things	(statsd	and	Datadog)	
20/11/15	 @sheri>ackson	|	@danielbryantuk
And	a	Few	More…	
•  Rails		
–  Single	process	(Passenger)	per	container	
–  Ul5mately	ran	Unicorn	(stats	don’t	lie…)	
–  Missed	‘rails	console’	
•  Java	
–  OOM	kills	(Xmx	+	Metaspace	+	JVM	Overhead	+	OS	Overhead)	
•  Ops	learning	from	dev	–	design	and	development	workflow	
•  The	cron/Chronos	migra5on	challenge	
20/11/15	 @sheri>ackson	|	@danielbryantuk
4. The Proof of the pudding
20/11/15	 @sheri>ackson	|	@danielbryantuk
Lesson	1:	If	you	design	a	process,	make	sure	
you	use	it.	
20/11/15	 @sheri>ackson	|	@danielbryantuk
20/11/15	 @sheri>ackson	|	@danielbryantuk
20/11/15	 @sheri>ackson	|	@danielbryantuk
Lesson	2:	Load	test	your	system	frequently	
20/11/15	 @sheri>ackson	|	@danielbryantuk
Lesson	3:	Take	note	of	lesson	number	1	
	
(If	you	design	a	process,	make	sure	you	use	it.)	
	
	
20/11/15	 @sheri>ackson	|	@danielbryantuk
5. Operations: Automate everything (except the people)
20/11/15	 @sheri>ackson	|	@danielbryantuk
Microservices…	Macro	Opera5ons	
•  Microservice	Prerequisites	(bit.ly/1wIjY58)		
–  Rapid	provisioning	
–  Basic	monitoring	
–  Rapid	applica5on	deployment	
•  In	a	nutshell…	
–  Technical	part	of	DevOps	
–  CI/CD		
20/11/15	 @sheri>ackson	|	@danielbryantuk
In	the	Beginning…	
20/11/15	 @sheri>ackson	|	@danielbryantuk
Automa5ng	Jobs	Away?	
20/11/15	 @sheri>ackson	|	@danielbryantuk
…and	in	the	Middle	(and	the	‘End’)	
20/11/15	 @sheri>ackson	|	@danielbryantuk
…and	in	the	Middle	(and	the	‘End’)	
20/11/15	 @sheri>ackson	|	@danielbryantuk	
www.infoq.com/news/2015/06/too-big-to-fail
Helpful	Processes	
•  BDD	user	journeys	across	system	(via	APIs)	
–  …and	individual	services	
–  Don’t	forget	‘ili5es’	(ZAP,	Jmeter)	
•  Brendan	Gregg’s	USE	methodology	
–  check	u5liza5on,	satura5on,	and	errors.	
•  Symptom-based	Monitoring	(Ticketmaster)	
20/11/15	 @sheri>ackson	|	@danielbryantuk
Some	Bed5me	Reading…	
20/11/15	 @sheri>ackson	|	@danielbryantuk
6. Summarising our journey
20/11/15	 @sheri>ackson	|	@danielbryantuk
Summary	
•  An	epic	journey	
•  Docker	is	now	proving	itself	in	produc5on	
–  Reduced	response	5me	and	footprint	
•  Packaging	applica5ons	is	easier	
–  So	is	experimenta5on…	
•  Increased	harmony	between	Dev	and	Ops	
20/11/15	 @sheri>ackson	|	@danielbryantuk
Before	We	Go…	
•  Huge	thanks	to	the	en5re	NOTHS	tech	team	
– They	made	this	possible	
•  Big	thanks	to	the	OpenCredo	team	
– For	helping	to	kick-start	the	ini5a5ve	
20/11/15	 @sheri>ackson	|	@danielbryantuk
Thanks!	
•  We’re	happy	to	take	any	ques5ons…	
•  By	the	way,	we’re	both	hiring...	
– www.notonthehighstreet.com/work-with-us		
– www.opencredo.com/company/careers/		
20/11/15	 @sheri>ackson	|	@danielbryantuk

More Related Content

PDF
OOP2016 "The Business Behind Microservices: Organisational, Architectural and...
PPTX
TTN 2015 "Defining DevOps: Concepts, Technology and Automation. Oh yeah, and ...
PDF
ZTLive 2016 "Introduction to Microservices"
PDF
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
PDF
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
PDF
OC 2015: The Business Behind Microservices
PDF
ACCU16 "Let's Not Repeat the Mistakes of SOA: 'Micro' Services, Macro Organis...
PDF
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"
OOP2016 "The Business Behind Microservices: Organisational, Architectural and...
TTN 2015 "Defining DevOps: Concepts, Technology and Automation. Oh yeah, and ...
ZTLive 2016 "Introduction to Microservices"
muCon 2015 "The Business Behind Microservices: Organisational, Architectural,...
BCS 2016 "Intro to Microservices (and the Seven Deadly Sins)"
OC 2015: The Business Behind Microservices
ACCU16 "Let's Not Repeat the Mistakes of SOA: 'Micro' Services, Macro Organis...
DevoxxUK 2015 "The Seven Deadly Sins of Microservices (Full Version)"

What's hot (20)

PPTX
J1 2015 "Thinking Fast and Slow with Software Development"
PDF
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
PDF
MicroManchester 2016 "Microservices from 30000ft: Organisation, Architecture ...
PPTX
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
PDF
OOP/MM 2017: "Seven (More) Deadly Sins of Microservices"
PDF
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
PPTX
JavaOne 2016 "Java, Microservices, Cloud and Containers"
PDF
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
PDF
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
PDF
DLJCJUG 2015: The Seven Deadly Sins of Microservices
PDF
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
PDF
MicroManchester 2016 "A Brief Guide to Microservices"
PDF
Microservice Summit 2016 "Microservices: The Organisational and People Impact"
PDF
CTOs in London "The Challenges of Evaluating Development Technology Within th...
PPTX
The London Web "Empathy - The Hidden Ingredient of Good Software Development"
PPTX
Microsoft Garage - Accelerating Innovation
PDF
DrupalGov Canberra 2014 Keynote: Code for a better world: Open Source Drupal ...
PDF
Open source delivers great digital experiences
PPTX
Expanding Pockets of DevOps Greatness
PDF
Culture Hacking for Change Management
J1 2015 "Thinking Fast and Slow with Software Development"
LMSUG 2015 "The Business Behind Microservices: Organisational, Architectural ...
MicroManchester 2016 "Microservices from 30000ft: Organisation, Architecture ...
DevoxxUK 2016: "DevOps: Microservices, containers, platforms, tooling... Oh y...
OOP/MM 2017: "Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
JavaOne 2016 "Java, Microservices, Cloud and Containers"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
DLJCJUG 2015: The Seven Deadly Sins of Microservices
SwisscomSoftwareDay 2016 "The Trials and Tribulations of Making Software Small"
MicroManchester 2016 "A Brief Guide to Microservices"
Microservice Summit 2016 "Microservices: The Organisational and People Impact"
CTOs in London "The Challenges of Evaluating Development Technology Within th...
The London Web "Empathy - The Hidden Ingredient of Good Software Development"
Microsoft Garage - Accelerating Innovation
DrupalGov Canberra 2014 Keynote: Code for a better world: Open Source Drupal ...
Open source delivers great digital experiences
Expanding Pockets of DevOps Greatness
Culture Hacking for Change Management
Ad

Similar to ContainerSched 2015 "Our journey to world (gifting) domination - how notonthehighstreet.com embraced Docker" (20)

PPTX
muCon 2014 "Building Java Microservices for the Cloud"
PPTX
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
PDF
Haufe #msaday - Building a Microservice Ecosystem by Daniel Bryant
PDF
Building a microservice ecosystem
PDF
Haufe #msaday: "Building a Microservice Ecosystem"
PPTX
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
PDF
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
PDF
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
PDF
The seven more deadly sins of microservices final
PPTX
O'Reilly SACON "Continuous Delivery Patterns for Contemporary Architecture"
PPTX
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
PPTX
O'Reilly 2016: "Continuous Delivery with Containers: The Trials and Tribulati...
PDF
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
PDF
muCon 2016: "Seven (More) Deadly Sins of Microservices"
PDF
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
PPTX
O'Reilly/Nginx 2016: "Continuous Delivery with Containers: The Trials and Tri...
PPTX
OReilly SACON 2016 "A Practical Guide for Continuous Delivery with Containers"
PDF
Invisible Architectures - Supporting Public-Facing Technologies
KEY
Nordkapp dConstruct09 Recap
PDF
BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"
muCon 2014 "Building Java Microservices for the Cloud"
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
Haufe #msaday - Building a Microservice Ecosystem by Daniel Bryant
Building a microservice ecosystem
Haufe #msaday: "Building a Microservice Ecosystem"
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
The seven more deadly sins of microservices final
O'Reilly SACON "Continuous Delivery Patterns for Contemporary Architecture"
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
O'Reilly 2016: "Continuous Delivery with Containers: The Trials and Tribulati...
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
muCon 2016: "Seven (More) Deadly Sins of Microservices"
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
O'Reilly/Nginx 2016: "Continuous Delivery with Containers: The Trials and Tri...
OReilly SACON 2016 "A Practical Guide for Continuous Delivery with Containers"
Invisible Architectures - Supporting Public-Facing Technologies
Nordkapp dConstruct09 Recap
BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"
Ad

More from Daniel Bryant (20)

PDF
ITKonekt 2023: The Busy Platform Engineers Guide to API Gateways
PDF
CraftConf 2023 "Microservice Testing Techniques: Mocks vs Service Virtualizat...
PDF
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
PDF
Java Meetup 23: 'Debugging Microservices "Remocally" in Kubernetes with Telep...
PPTX
DevRelCon 2022: "Is Product Led Growth (PLG) the “DevOps” of the DevRel World"
PDF
Fall 22: "From Kubernetes to PaaS to... err, what's next"
PDF
Building Microservice Systems Without Cooking Your Laptop: Going “Remocal” wi...
PDF
KubeCrash 22: Debugging Microservices "Remocally" in Kubernetes with Telepres...
PDF
JAX London 22: Debugging Microservices "Remocally" in Kubernetes with Telepre...
PDF
CloudBuilders 2022: "The Past, Present, and Future of Cloud Native API Gateways"
PDF
KubeCon EU 2022: From Kubernetes to PaaS to Err What's Next
PDF
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
PDF
DevXDay KubeCon NA 2021: "From Kubernetes to PaaS to Developer Control Planes"
PDF
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
PDF
Container Days: Easy Debugging of Microservices Running on Kubernetes with Te...
PDF
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...
PDF
MJC 2021: "Debugging Java Microservices Running on Kubernetes with Telepresence"
PDF
LJC 4/21"Easy Debugging of Java Microservices Running on Kubernetes with Tele...
PDF
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
PPTX
HashiCorp Webinar: "Getting started with Ambassador and Consul on Kubernetes ...
ITKonekt 2023: The Busy Platform Engineers Guide to API Gateways
CraftConf 2023 "Microservice Testing Techniques: Mocks vs Service Virtualizat...
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
Java Meetup 23: 'Debugging Microservices "Remocally" in Kubernetes with Telep...
DevRelCon 2022: "Is Product Led Growth (PLG) the “DevOps” of the DevRel World"
Fall 22: "From Kubernetes to PaaS to... err, what's next"
Building Microservice Systems Without Cooking Your Laptop: Going “Remocal” wi...
KubeCrash 22: Debugging Microservices "Remocally" in Kubernetes with Telepres...
JAX London 22: Debugging Microservices "Remocally" in Kubernetes with Telepre...
CloudBuilders 2022: "The Past, Present, and Future of Cloud Native API Gateways"
KubeCon EU 2022: From Kubernetes to PaaS to Err What's Next
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
DevXDay KubeCon NA 2021: "From Kubernetes to PaaS to Developer Control Planes"
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
Container Days: Easy Debugging of Microservices Running on Kubernetes with Te...
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...
MJC 2021: "Debugging Java Microservices Running on Kubernetes with Telepresence"
LJC 4/21"Easy Debugging of Java Microservices Running on Kubernetes with Tele...
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
HashiCorp Webinar: "Getting started with Ambassador and Consul on Kubernetes ...

Recently uploaded (20)

PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Electronic commerce courselecture one. Pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Approach and Philosophy of On baking technology
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
DOCX
The AUB Centre for AI in Media Proposal.docx
PPT
Teaching material agriculture food technology
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
NewMind AI Monthly Chronicles - July 2025
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Modernizing your data center with Dell and AMD
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Review of recent advances in non-invasive hemoglobin estimation
Reach Out and Touch Someone: Haptics and Empathic Computing
Electronic commerce courselecture one. Pdf
Big Data Technologies - Introduction.pptx
Unlocking AI with Model Context Protocol (MCP)
Approach and Philosophy of On baking technology
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
“AI and Expert System Decision Support & Business Intelligence Systems”
The AUB Centre for AI in Media Proposal.docx
Teaching material agriculture food technology
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Empathic Computing: Creating Shared Understanding
NewMind AI Monthly Chronicles - July 2025
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Advanced methodologies resolving dimensionality complications for autism neur...
Modernizing your data center with Dell and AMD
Build a system with the filesystem maintained by OSTree @ COSCUP 2025

ContainerSched 2015 "Our journey to world (gifting) domination - how notonthehighstreet.com embraced Docker"