Top Banner
Con$nuous Delivery and MarkLogic Stephen Mc Kearney BBC
18

Continuous Delivery and MarkLogic

Apr 13, 2017

Download

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Continuous Delivery and MarkLogic

Con$nuousDeliveryandMarkLogic

StephenMcKearneyBBC

Page 2: Continuous Delivery and MarkLogic
Page 3: Continuous Delivery and MarkLogic

“FindthemostpopularshortcomedyclipfeaturingMr.BeanthatIcanwatchonmyAndroidtablet”

Page 4: Continuous Delivery and MarkLogic

Architecture

Page 5: Continuous Delivery and MarkLogic

MarkLogicCluster

•  6hostspercluster

•  120requests/second

•  300ms/request

•  Unitoffailure

Page 6: Continuous Delivery and MarkLogic

DevelopmentProcess

Page 7: Continuous Delivery and MarkLogic

Step1:Measure$meinqueues

Page 8: Continuous Delivery and MarkLogic

ImproveTes$ng•  Ntestrunners•  Target:20minutes

•  Mul$pleMarkLogicinstances•  Run1/Ntests

•  Typesoftests•  Unittests•  Integra$ontests•  SanityChecks

•  Mockingforspeed•  xdmp:set

Page 9: Continuous Delivery and MarkLogic

Step2:ImprovedTes$ng

Page 10: Continuous Delivery and MarkLogic

Tes$ngatScale

•  Performancetest– Realis$crequestload– Replayrequests

•  Tes$ngingest– Realis$cloadpaPerns

•  AsLive/Stageenvironment– 2ndMaster– 1Slave

Page 11: Continuous Delivery and MarkLogic

Step3:AsLiveEnvironment

Page 12: Continuous Delivery and MarkLogic

AsLiveinLive

Page 13: Continuous Delivery and MarkLogic

DeploymentIssues

•  Deployingcodetooslow•  Performancespikes•  Lotsofmonitoring

•  Versionallcode&configura$on•  Useappserverroot

•  Allcodeinlivebeforebeingac$ve•  Supportstes$ng

Page 14: Continuous Delivery and MarkLogic

Step4:VersionedDeployment

Page 15: Continuous Delivery and MarkLogic

Step5:Con$nuousDeployment

Page 16: Continuous Delivery and MarkLogic

Step6:Doweneedatester?

Page 17: Continuous Delivery and MarkLogic

CurrentPipeline

Page 18: Continuous Delivery and MarkLogic

NextTarget

•  Fasterlivedeployments– 40-60minutedelaythroughbuildsystem

•  1x1Flow– Singlefeature

•  ApplyapproachtoProductManagement– Howwepriori$sework– Clientsshouldpullwork