SlideShare une entreprise Scribd logo
1  sur  42
Télécharger pour lire hors ligne
Cloud	
  Developer’s	
  DHARMA…	
  
	
  redefining	
  ‘done’	
  for	
  Cloud	
  applica3ons	
  
Daniel	
  Bryant	
  
CTO,	
  Instant	
  Access	
  Technologies	
  
	
  
d.bryant@iatltd.com	
  
@taidevcouk	
  	
  
19/02/2014	
  

@taidevcouk	
  
epoints.com	
  2012/13	
  Upgrade…	
  
•  Increasing	
  traffic	
  	
  
–  Scalability	
  being	
  stretched	
  

•  Increasingly	
  diverse	
  requirements	
  
•  Our	
  starPng	
  point	
  
–  Developers	
  creaPng	
  monolithic	
  applicaPon	
  
–  Manual	
  QA	
  
–  OperaPons	
  deploying	
  to	
  data	
  center	
  
19/02/2014	
  

@taidevcouk	
  
Core	
  Changes…	
  
•  Service-­‐Oriented	
  Architecture	
  

•  Cloud-­‐based	
  deployments	
  

•  DevOps	
  Culture	
  

19/02/2014	
  

@taidevcouk	
  
Core	
  Changes…	
  
•  Service-­‐Oriented	
  Architecture	
  
–  TwiTer’s	
  Story	
  (bit.ly/1j1WbmI)	
  

•  Cloud-­‐based	
  deployments	
  
–  Tonight!	
  

•  DevOps	
  Culture	
  
–  LJC	
  Event	
  March	
  13th	
  7pm	
  
19/02/2014	
  

@taidevcouk	
  
Moving	
  to	
  the	
  Cloud	
  
•  IAT	
  chose	
  Amazon	
  Web	
  Services	
  (AWS)	
  IaaS	
  
•  Great	
  choice,	
  but…	
  
–  Made	
  a	
  few	
  mistakes	
  	
  
–  Learnt	
  lots	
  of	
  lessons	
  

19/02/2014	
  

@taidevcouk	
  
 
	
  
We’ve	
  created	
  a	
  “Cloud	
  Developer’s	
  DHARMA”	
  
to	
  act	
  as	
  a	
  checklist	
  when	
  building	
  Cloud	
  apps	
  

19/02/2014	
  

@taidevcouk	
  
dharma	
  
/ˈdɑːmə,ˈdəːmə/	
  
	
  
noun	
  
	
  
1.  Signifies	
  behaviors	
  that	
  are	
  considered	
  to	
  be	
  in	
  
accord	
  with	
  order	
  that	
  makes	
  life	
  and	
  universe	
  
possible	
  (Hinduism)	
  
2.  "cosmic	
  law	
  and	
  order”,	
  but	
  is	
  also	
  applied	
  to	
  
the	
  teachings	
  of	
  the	
  Buddha	
  (Buddhism)	
  
19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
19/02/2014	
  

@taidevcouk	
  
Edge	
  DocumentaPon	
  is	
  Vital	
  
•  Swagger	
  
–  helloreverb.com/developers/swagger	
  

•  Mashery’s	
  IODocs	
  
–  www.mashery.com/product/io-­‐docs	
  

•  Google’s	
  Discovery	
  Documents	
  
–  developers.google.com/discovery/v1/using	
  
19/02/2014	
  

@taidevcouk	
  
19/02/2014	
  

@taidevcouk	
  
19/02/2014	
  

@taidevcouk	
  
19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
High	
  Cohesion	
  /	
  Loose	
  Coupling…	
  
…all	
  the	
  way	
  down	
  
	
  
•  Public	
  API	
  
–  PayPal	
  (bit.ly/1hnZNly)	
  

•  Architecture	
  
–  Services	
  
–  Components	
  
19/02/2014	
  

@taidevcouk	
  
High	
  Cohesion	
  /	
  Loose	
  Coupling…	
  
•  Code	
  
–  SOLID	
  Principles	
  

•  Datastores	
  /	
  Caches	
  
–  Fault	
  tolerance	
  
–  Zero-­‐downPme	
  deployments	
  
–  MigraPon	
  and	
  upgrades	
  
19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
Automated	
  from	
  Commit	
  to	
  Cloud	
  
•  ConPnuous	
  IntegraPon/Delivery	
  
•  Jenkins	
  Build	
  Pipeline	
  Plugin	
  (bit.ly/1hq9XSN)	
  

19/02/2014	
  

@taidevcouk	
  
Our	
  Build	
  Pipeline	
  
•  Component	
  Build 	
  	
  
–  Compile	
  
–  Unit	
  Tests	
  (surefire)	
  
–  IntegraPon	
  Tests	
  (failsafe)	
  

•  Deployment	
  onto	
  QA	
  Cloud	
  
–  Python	
  Scripts	
  +	
  Chef	
  to	
  provision	
  
–  Verify	
  success	
  using	
  Python	
  
19/02/2014	
  

@taidevcouk	
  
Our	
  Build	
  Pipeline	
  
•  Acceptance	
  Tests	
  

–  Cucumber	
  and	
  Selenium	
  
–  Work	
  in	
  progress…	
  

•  Performance	
  Tests	
  

–  Jmeter	
  
–  Jenkins	
  Jmeter	
  performance	
  plugin	
  

•  Staging	
  /	
  Live	
  Deployment	
  

–  Human-­‐based	
  condiPonal	
  operaPon	
  	
  

19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
Deployment	
  Planorm:	
  What	
  you’ve	
  got…	
  

19/02/2014	
  

@taidevcouk	
  
What	
  you	
  think	
  you	
  want…	
  

19/02/2014	
  

@taidevcouk	
  
What	
  you	
  get…	
  

Fact:	
  9	
  out	
  of	
  10	
  cheetahs	
  prefer	
  the	
  taste	
  of	
  an	
  Ops	
  team	
  over	
  Enned	
  food	
  
	
  
19/02/2014	
  

@taidevcouk	
  
Thou	
  Shalt	
  Know	
  thy	
  Cloud…	
  
•  AWS	
  EBS	
  100	
  IOPS	
  (by	
  default)	
  	
  
–  My	
  Mac	
  SSD	
  does	
  49K	
  IOPS	
  

•  1000Mbps	
  network	
  max	
  transfer	
  ~125Mb/s	
  
–  My	
  Mac	
  does	
  400+	
  Mb/s	
  SequenPal	
  Write	
  to	
  SSD	
  

	
  Reference	
  for	
  Mac	
  staPsPcs:	
  bit.ly/1tJZH8	
  
19/02/2014	
  

@taidevcouk	
  
Thou	
  Shalt	
  Know	
  thy	
  Cloud…	
  
•  “Noisy	
  [virtual]	
  Neighbours”	
  
–  My	
  Mac	
  only	
  deals	
  with	
  noisy	
  colleagues	
  

•  “Things	
  fail	
  all	
  the	
  Pme	
  [in	
  the	
  Cloud]”	
  
–  My	
  Mac	
  is	
  quite	
  reliable…	
  
	
  
19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
Monitor	
  All	
  The	
  Things!	
  
•  Infrastructure	
  monitoring	
  
–  Nagios	
  
–  Zabbix	
  
–  Splunk	
  
–  AppDynamics	
  

19/02/2014	
  

@taidevcouk	
  
Component	
  Metrics	
  
•  Dropwizard’s	
  Metrics	
  
–  metrics.codahale.com	
  

•  Nenlix’s	
  Servo	
  
–  github.com/Nenlix/servo	
  

•  Etsy’s	
  StatsD	
  
–  github.com/etsy/statsd/wiki	
  
19/02/2014	
  

@taidevcouk	
  
Gauges,	
  Counters,	
  Meters,	
  Timers…	
  

19/02/2014	
  

@taidevcouk	
  
Health	
  Checks	
  

19/02/2014	
  

@taidevcouk	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
AnPfragile	
  

19/02/2014	
  

@taidevcouk	
  
Black	
  Swan	
  Theory 	
  	
  
“…is	
  a	
  metaphor	
  that	
  describes	
  an	
  event	
  that	
  
comes	
  as	
  a	
  surprise,	
  has	
  a	
  major	
  effect,	
  and	
  is	
  
oten	
  inappropriately	
  raPonalized	
  ater	
  the	
  fact	
  
with	
  the	
  benefit	
  of	
  hindsight”	
  
	
  
	
  
Nassim	
  Nicholas	
  Taleb,	
  The	
  Black	
  Swan	
  

19/02/2014	
  

@taidevcouk	
  
AnPfragile	
  
•  The	
  opposite	
  of	
  fragile?	
  
–  Robust…	
  
–  AnPfragile…	
  

•  Nenlix	
  are	
  best-­‐in-­‐class	
  
–  bit.ly/1gs5n3q	
  

•  System	
  must	
  be	
  robust	
  first!	
  
19/02/2014	
  

@taidevcouk	
  
Design	
  for	
  Failure	
  
•  Design	
  paTerns	
  
–  Timeouts	
  /	
  retries	
  
–  Bulkheads	
  /	
  circuit-­‐breakers	
  

•  InspiraPon	
  
–  Chris	
  Richardson	
  (slidesha.re/1t3vsg)	
  
–  Nenlix	
  (bit.ly/1h5GMid)	
  

19/02/2014	
  

@taidevcouk	
  
Real	
  AnPfragility	
  
•  Autoscaling	
  

19/02/2014	
  

@taidevcouk	
  
AnPfragile	
  PaTerns	
  
•  Stateless	
  components	
  
•  Distributed	
  data	
  stores	
  /	
  caches	
  
•  Eventual	
  consistency	
  
•  Asynchronous	
  communicaPon	
  
–  Message	
  /	
  event	
  driven	
  
19/02/2014	
  

@taidevcouk	
  
So,	
  Cloud	
  Apps	
  are	
  ‘done’	
  when…	
  
Documented	
  (at	
  the	
  edge)	
  
Highly	
  cohesive/loosely	
  coupled	
  (all	
  the	
  way	
  down)	
  
Automated	
  from	
  commit	
  to	
  Cloud	
  
Resource	
  aware	
  
Monitored	
  thoroughly	
  
AnPfragile	
  
19/02/2014	
  

@taidevcouk	
  
Thanks	
  For	
  Listening	
  
•  Massive	
  thanks	
  to	
  all	
  the	
  IAT	
  team!	
  
•  This	
  is	
  a	
  beta	
  version	
  talk	
  	
  
–  Feedback	
  is	
  most	
  appreciated!	
  

•  QuesPons	
  /	
  comments?	
  
–  d.bryant@iatltd.com	
  
–  @taidevcouk	
  
19/02/2014	
  

@taidevcouk	
  

Contenu connexe

Similaire à BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"

LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"
LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"
LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"Daniel Bryant
 
LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"Daniel Bryant
 
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"Daniel Bryant
 
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applicationsJavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applicationsDaniel Bryant
 
muCon 2014 "Building Java Microservices for the Cloud"
muCon 2014 "Building Java Microservices for the Cloud"muCon 2014 "Building Java Microservices for the Cloud"
muCon 2014 "Building Java Microservices for the Cloud"Daniel Bryant
 
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
muCon 2016: "Seven (More) Deadly Sins of Microservices"
muCon 2016: "Seven (More) Deadly Sins of Microservices"muCon 2016: "Seven (More) Deadly Sins of Microservices"
muCon 2016: "Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"Daniel Bryant
 
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...Daniel Bryant
 
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"
Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"
Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
JAXDevOps 2017 "The Seven (More) Deadly Sins of Microservices
JAXDevOps 2017 "The Seven (More) Deadly Sins of MicroservicesJAXDevOps 2017 "The Seven (More) Deadly Sins of Microservices
JAXDevOps 2017 "The Seven (More) Deadly Sins of MicroservicesDaniel Bryant
 
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"Daniel Bryant
 
Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...
Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...
Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...Daniel Bryant
 
The seven more deadly sins of microservices final
The seven more deadly sins of microservices finalThe seven more deadly sins of microservices final
The seven more deadly sins of microservices finalHaufe-Lexware GmbH & Co KG
 
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant OpenCredo
 
How we lose etu hadoop competition
How we lose etu hadoop competitionHow we lose etu hadoop competition
How we lose etu hadoop competitionEvans Ye
 
SATURN 2018 "Continuous Delivery with Containers" Extended 90 version
SATURN 2018 "Continuous Delivery with Containers" Extended 90 versionSATURN 2018 "Continuous Delivery with Containers" Extended 90 version
SATURN 2018 "Continuous Delivery with Containers" Extended 90 versionDaniel Bryant
 

Similaire à BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications" (20)

LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"
LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"
LJC: "Chuck Norris Doesn't Do DevOps...but Java developers might benefit"
 
LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"LJC 05/14 "Cloud Developer's DHARMA"
LJC 05/14 "Cloud Developer's DHARMA"
 
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
vJUG24 2016 "Seven (More) Deadly Sins of Microservice"
 
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applicationsJavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
JavaOne 2014: Cloud Developer's DHARMA: Redefining 'done' for Cloud applications
 
muCon 2014 "Building Java Microservices for the Cloud"
muCon 2014 "Building Java Microservices for the Cloud"muCon 2014 "Building Java Microservices for the Cloud"
muCon 2014 "Building Java Microservices for the Cloud"
 
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
Micro Manchester Meetup: "The Seven (More) Deadly Sins of Microservices"
 
muCon 2016: "Seven (More) Deadly Sins of Microservices"
muCon 2016: "Seven (More) Deadly Sins of Microservices"muCon 2016: "Seven (More) Deadly Sins of Microservices"
muCon 2016: "Seven (More) Deadly Sins of Microservices"
 
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
LJCConf 2013 "Chuck Norris Doesn't Need DevOps"
 
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
LJC Mashup "Building Java Microservices for the Cloud && Chuck Norris Doesn't...
 
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
OSCON EU 2016 "Seven (More) Deadly Sins of Microservices"
 
Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"
Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"
Lisbon DevOps: "Seven (More) Deadly Sins of Microservices"
 
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
DevOpsNorth 2017 "Seven (More) Deadly Sins of Microservices"
 
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
GOTO Chicago/CraftConf 2017 "The Seven (More) Deadly Sins of Microservices"
 
JAXDevOps 2017 "The Seven (More) Deadly Sins of Microservices
JAXDevOps 2017 "The Seven (More) Deadly Sins of MicroservicesJAXDevOps 2017 "The Seven (More) Deadly Sins of Microservices
JAXDevOps 2017 "The Seven (More) Deadly Sins of Microservices
 
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
QCon NY 2016: "The Seven (More) Deadly Sins of Microservices"
 
Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...
Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...
Codemotion Rome 2018 "Continuous Delivery with Containers: The Good, the Bad ...
 
The seven more deadly sins of microservices final
The seven more deadly sins of microservices finalThe seven more deadly sins of microservices final
The seven more deadly sins of microservices final
 
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
Haufe #msaday - Seven More Deadly Sins of Microservices by Daniel Bryant
 
How we lose etu hadoop competition
How we lose etu hadoop competitionHow we lose etu hadoop competition
How we lose etu hadoop competition
 
SATURN 2018 "Continuous Delivery with Containers" Extended 90 version
SATURN 2018 "Continuous Delivery with Containers" Extended 90 versionSATURN 2018 "Continuous Delivery with Containers" Extended 90 version
SATURN 2018 "Continuous Delivery with Containers" Extended 90 version
 

Plus de Daniel Bryant

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

Plus de Daniel Bryant (20)

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

Dernier

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 

Dernier (20)

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 

BETA: "Cloud Developers DHARMA: Redefining 'done' for Cloud applications"

  • 1. Cloud  Developer’s  DHARMA…    redefining  ‘done’  for  Cloud  applica3ons   Daniel  Bryant   CTO,  Instant  Access  Technologies     d.bryant@iatltd.com   @taidevcouk    
  • 3. epoints.com  2012/13  Upgrade…   •  Increasing  traffic     –  Scalability  being  stretched   •  Increasingly  diverse  requirements   •  Our  starPng  point   –  Developers  creaPng  monolithic  applicaPon   –  Manual  QA   –  OperaPons  deploying  to  data  center   19/02/2014   @taidevcouk  
  • 4. Core  Changes…   •  Service-­‐Oriented  Architecture   •  Cloud-­‐based  deployments   •  DevOps  Culture   19/02/2014   @taidevcouk  
  • 5. Core  Changes…   •  Service-­‐Oriented  Architecture   –  TwiTer’s  Story  (bit.ly/1j1WbmI)   •  Cloud-­‐based  deployments   –  Tonight!   •  DevOps  Culture   –  LJC  Event  March  13th  7pm   19/02/2014   @taidevcouk  
  • 6. Moving  to  the  Cloud   •  IAT  chose  Amazon  Web  Services  (AWS)  IaaS   •  Great  choice,  but…   –  Made  a  few  mistakes     –  Learnt  lots  of  lessons   19/02/2014   @taidevcouk  
  • 7.     We’ve  created  a  “Cloud  Developer’s  DHARMA”   to  act  as  a  checklist  when  building  Cloud  apps   19/02/2014   @taidevcouk  
  • 8. dharma   /ˈdɑːmə,ˈdəːmə/     noun     1.  Signifies  behaviors  that  are  considered  to  be  in   accord  with  order  that  makes  life  and  universe   possible  (Hinduism)   2.  "cosmic  law  and  order”,  but  is  also  applied  to   the  teachings  of  the  Buddha  (Buddhism)   19/02/2014   @taidevcouk  
  • 9. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 10. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 12. Edge  DocumentaPon  is  Vital   •  Swagger   –  helloreverb.com/developers/swagger   •  Mashery’s  IODocs   –  www.mashery.com/product/io-­‐docs   •  Google’s  Discovery  Documents   –  developers.google.com/discovery/v1/using   19/02/2014   @taidevcouk  
  • 16. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 17. High  Cohesion  /  Loose  Coupling…   …all  the  way  down     •  Public  API   –  PayPal  (bit.ly/1hnZNly)   •  Architecture   –  Services   –  Components   19/02/2014   @taidevcouk  
  • 18. High  Cohesion  /  Loose  Coupling…   •  Code   –  SOLID  Principles   •  Datastores  /  Caches   –  Fault  tolerance   –  Zero-­‐downPme  deployments   –  MigraPon  and  upgrades   19/02/2014   @taidevcouk  
  • 19. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 20. Automated  from  Commit  to  Cloud   •  ConPnuous  IntegraPon/Delivery   •  Jenkins  Build  Pipeline  Plugin  (bit.ly/1hq9XSN)   19/02/2014   @taidevcouk  
  • 21. Our  Build  Pipeline   •  Component  Build     –  Compile   –  Unit  Tests  (surefire)   –  IntegraPon  Tests  (failsafe)   •  Deployment  onto  QA  Cloud   –  Python  Scripts  +  Chef  to  provision   –  Verify  success  using  Python   19/02/2014   @taidevcouk  
  • 22. Our  Build  Pipeline   •  Acceptance  Tests   –  Cucumber  and  Selenium   –  Work  in  progress…   •  Performance  Tests   –  Jmeter   –  Jenkins  Jmeter  performance  plugin   •  Staging  /  Live  Deployment   –  Human-­‐based  condiPonal  operaPon     19/02/2014   @taidevcouk  
  • 23. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 24. Deployment  Planorm:  What  you’ve  got…   19/02/2014   @taidevcouk  
  • 25. What  you  think  you  want…   19/02/2014   @taidevcouk  
  • 26. What  you  get…   Fact:  9  out  of  10  cheetahs  prefer  the  taste  of  an  Ops  team  over  Enned  food     19/02/2014   @taidevcouk  
  • 27. Thou  Shalt  Know  thy  Cloud…   •  AWS  EBS  100  IOPS  (by  default)     –  My  Mac  SSD  does  49K  IOPS   •  1000Mbps  network  max  transfer  ~125Mb/s   –  My  Mac  does  400+  Mb/s  SequenPal  Write  to  SSD    Reference  for  Mac  staPsPcs:  bit.ly/1tJZH8   19/02/2014   @taidevcouk  
  • 28. Thou  Shalt  Know  thy  Cloud…   •  “Noisy  [virtual]  Neighbours”   –  My  Mac  only  deals  with  noisy  colleagues   •  “Things  fail  all  the  Pme  [in  the  Cloud]”   –  My  Mac  is  quite  reliable…     19/02/2014   @taidevcouk  
  • 29. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 30. Monitor  All  The  Things!   •  Infrastructure  monitoring   –  Nagios   –  Zabbix   –  Splunk   –  AppDynamics   19/02/2014   @taidevcouk  
  • 31. Component  Metrics   •  Dropwizard’s  Metrics   –  metrics.codahale.com   •  Nenlix’s  Servo   –  github.com/Nenlix/servo   •  Etsy’s  StatsD   –  github.com/etsy/statsd/wiki   19/02/2014   @taidevcouk  
  • 32. Gauges,  Counters,  Meters,  Timers…   19/02/2014   @taidevcouk  
  • 33. Health  Checks   19/02/2014   @taidevcouk  
  • 34. Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 36. Black  Swan  Theory     “…is  a  metaphor  that  describes  an  event  that   comes  as  a  surprise,  has  a  major  effect,  and  is   oten  inappropriately  raPonalized  ater  the  fact   with  the  benefit  of  hindsight”       Nassim  Nicholas  Taleb,  The  Black  Swan   19/02/2014   @taidevcouk  
  • 37. AnPfragile   •  The  opposite  of  fragile?   –  Robust…   –  AnPfragile…   •  Nenlix  are  best-­‐in-­‐class   –  bit.ly/1gs5n3q   •  System  must  be  robust  first!   19/02/2014   @taidevcouk  
  • 38. Design  for  Failure   •  Design  paTerns   –  Timeouts  /  retries   –  Bulkheads  /  circuit-­‐breakers   •  InspiraPon   –  Chris  Richardson  (slidesha.re/1t3vsg)   –  Nenlix  (bit.ly/1h5GMid)   19/02/2014   @taidevcouk  
  • 39. Real  AnPfragility   •  Autoscaling   19/02/2014   @taidevcouk  
  • 40. AnPfragile  PaTerns   •  Stateless  components   •  Distributed  data  stores  /  caches   •  Eventual  consistency   •  Asynchronous  communicaPon   –  Message  /  event  driven   19/02/2014   @taidevcouk  
  • 41. So,  Cloud  Apps  are  ‘done’  when…   Documented  (at  the  edge)   Highly  cohesive/loosely  coupled  (all  the  way  down)   Automated  from  commit  to  Cloud   Resource  aware   Monitored  thoroughly   AnPfragile   19/02/2014   @taidevcouk  
  • 42. Thanks  For  Listening   •  Massive  thanks  to  all  the  IAT  team!   •  This  is  a  beta  version  talk     –  Feedback  is  most  appreciated!   •  QuesPons  /  comments?   –  d.bryant@iatltd.com   –  @taidevcouk   19/02/2014   @taidevcouk