SlideShare a Scribd company logo
1 of 129
Download to read offline
11 erfaringer ditt prosjekt ikke behøver å gjenta
The only good thing to do with good advice
is pass it on; it is never of any use to oneself
~Oscar Wilde~
Javazone 2015
Trond Arve Wasskog
2015-09-10
Vi vil ha DevOps-driftere!
jobb@bekk.no
Tilbakemelding
5
http://www.difi.no/artikkel/2015/06/ordningen-er-arets-digitale-suksesshistorie
8
UUID
I
de305d54-75b4-431b-adb2-eb6b9e546014
Unngå koordinering av
distribuerte systemer
http://blog.mikemccandless.com/2014/05/choosing-fast-unique-identifier-uuid.html
Snowflake
Rammeverk Opprinnelse Bits Lokalitet Koordinering Kollisjoner
UUID v4 Java 128 Nei Nei Marginal
Snowflake Twitter 64 Ja ZooKeeper Unik
ObjectId MongoDB 96 Ja MongoDB Unik
Simpleflake Sawdust 64 Ja Nei Minimal
Instagram Instagram 64 Ja PostgreSQL Unik
Odd/Even
MySql
Flickr 64 Ja MySql Nei
Sequence Oracle Num(28) Ja Oracle Unik
Jersey-avhengigheter
II
Mikrotjeneste
Mikrotjeneste
Tilbyder A
Mikrotjeneste
Klient A
Tilbyder A
Mikrotjeneste
Klient A
Tilbyder A
Jersey-client 1.18
Mikrotjeneste
Klient B Klient C
Klient E Klient F
Klient A
Klient D
Tilbyder A Tilbyder B Tilbyder C
Tilbyder D Tilbyder E Tilbyder F
Jersey-client 1.18
Mikrotjeneste
Klient B Klient C
Klient E Klient F
Klient A
Klient D
Tilbyder A Tilbyder B Tilbyder C
Tilbyder D Tilbyder E Tilbyder F
Jersey-client 1.18
Jersey-client 2.21
Java EE
Java EE
Java EE
OSGi
Jigsaw
HTTP-clientJersey-client 2.21
Klient A
Jersey-client 1.18 Java SDK
AbstractAPI
Mikrotjenestemonolitt
III
magnet-core
magnet-iur magnet-bhg magnet-edag magnet-kop
magnet-core
Syntetiske IDer
IV
Partsnummer
D-nummer
06117225830
Tid
Partsnummer
D-nummer
06117225830
Fødselsnummer
16127225830
Tid
Partsnummer
D-nummer
06117225830
Fødselsnummer
16127225830
Tid
Partsnummer
D-nummer
06117225830
Tid
Partsnummer
D-nummer
06117225830
Partsnummer 2
D-nummer
07117225830
Tid
Partsnummer
D-nummer
06117225830
Partsnummer 2
D-nummer
07117225830
Tid
Bruk naturlig ID
Backup/Restore
V
Men den eller de som skulle gjennomføre
prosessen trykket feil og slettet/klargjorde
288 eller 280 eksisterende disker som var
fulle av bankdata, har digitoday.no fått vite.
Usynkronisert backup
Stopp verdikjeden
Backup av synkron replika
Virtual image snapshots
Immutable data
Feilhåndtering & Logging
VI
CRITICAL != CRITICAL
DevOps
+
Kontinuerlig Leveranse
Minnebasert prosessering
VII
XML
Dokument
XML
Dokument
<Abdera>
<JAXB>
Parse
Java VM
Stream
XML
Dokument
<Abdera>
<JAXB>
Parse
<Thread>
Behandle
Java VM
Stream Object
95% av innsendingene er små
<1 % av innsendingene er store
Bank
2 700 000 konti
NAV Pensjon
2 500 000 inntektsmottakere
OutOfMemoryError
Heap size = 20 GB
Tidkrevende testing
Optimalisert XML-parsing
Komprimert lagring i minnet
Begrenset antall
samtidige innsendinger
Egne noder for store innsendinger
Stream processing!
Atom feed med innhold
VIII
How to use Atom for
Event-Driven Systems
Produsent Konsument
Komprimering
The "atom:content" element either contains
or links to the content of the entry.
Lenke til innhold
Variabel sidestørrelse
Enkelt design
IX
<Cache>
Map(ID,Fnr)
Map(ID,Orgnr)
Java VM
Slå opp
<Prosess>
Behandle
<Register>
ID<->Fnr
ID<->Orgnr
Hent
Transparent remote proxy
Enkelt!
Enkelt?Delta-endringer av cache
Overbelasting ved samtidig
oppdatering av cache
Bruker vi cache?
Timeout ved oppdatering av cache
Treig lasting av cacheTom cache
Delvis oppdatering av cache
OutOfMemoryError
Transparent remote proxy
Replikert cache
Transaksjonstimeout
X
http://www.cubrid.org/blog/dev-platform/understanding-jdbc-internals-and-timeout-configuration/
Fail fast
Transaksjonstimeout = MAX
Short
Transaction
Connection
Pool
Long
Transaction
Connection
Pool
Klient-timeout
XI
WAITING
WAITING
Health
check OK?
No
IN PROGRESS
Yes
WAITING
Health
check OK?
No
IN PROGRESS
Processing
complete?
FINISHED
Yes
Yes
Yes
WAITING
Health
check OK?
No
IN PROGRESS
Processing
complete?
FINISHED
Yes
Yes
Yes
Retry?No
Yes
WAITING
Health
check OK?
No
IN PROGRESS
Processing
complete?
FINISHED
Yes
Yes
Yes
Retry?No
Yes
No FAILED
2, 7 millioner oppgaver
21:39
Start
processing
21:39
Start
processing
01:24
Client
timeout
Klient-timeout = Infrastrukturfeil
WAITING
Health
check OK?
No
IN PROGRESS
Processing
complete?
FINISHED
Yes
Yes
Yes
Retry?No
Yes
Server => Commit
21:39
Start
processing
01:24
Client
timeout
01:25
First retry
21:39
Start
processing
01:24
Client
timeout
01:25
First retry
08:31
Client
timeout
21:39
Start
processing
01:24
Client
timeout
01:25
First retry
08:31
Client
timeout
...repeat 4
more
times
Final
timeout
FAILED
Tilpasset klient-timeout
Riktig feilhåndtering!
?
The only good thing to do with
good advice is pass it on; it is
never of any use to oneself
~Oscar Wilde~
Takk for at dere hørte på!
trond.arve.wasskog@bekk.no

More Related Content

Viewers also liked

соц-дем_10-11'10 (NashKiev.UA)
соц-дем_10-11'10 (NashKiev.UA)соц-дем_10-11'10 (NashKiev.UA)
соц-дем_10-11'10 (NashKiev.UA)NashKiev.UA
 
Priori Data - Mobile Tech Con Berlin - Summer 2013
Priori Data - Mobile Tech Con Berlin - Summer 2013Priori Data - Mobile Tech Con Berlin - Summer 2013
Priori Data - Mobile Tech Con Berlin - Summer 2013Patrick Kane
 
Talkapp camping
Talkapp campingTalkapp camping
Talkapp campingtalkapp
 
ICT & Education in Rural Seetings ICT4RD 2011
ICT & Education in Rural Seetings ICT4RD 2011 ICT & Education in Rural Seetings ICT4RD 2011
ICT & Education in Rural Seetings ICT4RD 2011 Saskia Harmsen
 
Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...
Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...
Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...Market Research & Data Services
 

Viewers also liked (8)

соц-дем_10-11'10 (NashKiev.UA)
соц-дем_10-11'10 (NashKiev.UA)соц-дем_10-11'10 (NashKiev.UA)
соц-дем_10-11'10 (NashKiev.UA)
 
Download15
Download15Download15
Download15
 
Press release steam generators asia
Press release steam generators   asiaPress release steam generators   asia
Press release steam generators asia
 
pp39-44 HEJoct16
pp39-44 HEJoct16pp39-44 HEJoct16
pp39-44 HEJoct16
 
Priori Data - Mobile Tech Con Berlin - Summer 2013
Priori Data - Mobile Tech Con Berlin - Summer 2013Priori Data - Mobile Tech Con Berlin - Summer 2013
Priori Data - Mobile Tech Con Berlin - Summer 2013
 
Talkapp camping
Talkapp campingTalkapp camping
Talkapp camping
 
ICT & Education in Rural Seetings ICT4RD 2011
ICT & Education in Rural Seetings ICT4RD 2011 ICT & Education in Rural Seetings ICT4RD 2011
ICT & Education in Rural Seetings ICT4RD 2011
 
Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...
Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...
Global Markets For Diesel Generating Sets – United States, United Kingdom, Ch...
 

Similar to 11 erfaringer ditt prosjekt ikke behøver å gjenta

The Client Strikes Back
The Client Strikes BackThe Client Strikes Back
The Client Strikes BackMagnus Green
 
Javascript tar hevn
Javascript tar hevnJavascript tar hevn
Javascript tar hevnfossmo
 
20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februarSturla Grelland
 
Monolitter og byggeklosser jon erik solheim - stacc
Monolitter og byggeklosser   jon erik solheim - staccMonolitter og byggeklosser   jon erik solheim - stacc
Monolitter og byggeklosser jon erik solheim - staccJon Solheim
 
20140128 Firstpoint seminar - Tid For Oppgradering
20140128   Firstpoint seminar - Tid For Oppgradering20140128   Firstpoint seminar - Tid For Oppgradering
20140128 Firstpoint seminar - Tid For OppgraderingSturla Grelland
 
Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...
Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...
Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...Kenneth de Brucq
 
SkillOpen 2011
SkillOpen 2011SkillOpen 2011
SkillOpen 2011Skill AS
 
Meetup 9 i KristansandPHP
Meetup 9 i KristansandPHPMeetup 9 i KristansandPHP
Meetup 9 i KristansandPHPMorten Bergset
 
GoOpen 2010: Håvard Haug Hanssen
GoOpen 2010: Håvard Haug HanssenGoOpen 2010: Håvard Haug Hanssen
GoOpen 2010: Håvard Haug HanssenFriprogsenteret
 
内部MySQL培训.2.高级应用
内部MySQL培训.2.高级应用内部MySQL培训.2.高级应用
内部MySQL培训.2.高级应用Lixun Peng
 
Introduksjon til Spring Boot
Introduksjon til Spring BootIntroduksjon til Spring Boot
Introduksjon til Spring BootHenrik Schwarz
 
Slik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node redSlik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node redSimen Sommerfeldt
 
Frokostseminar 25.november 2020
Frokostseminar 25.november 2020Frokostseminar 25.november 2020
Frokostseminar 25.november 2020Thorbjørn Værp
 
Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...
Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...
Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...IKT-Norge
 
JavaZone 2006 - Gode grep når prosjektet blir stort
JavaZone 2006 -  Gode grep når prosjektet blir stortJavaZone 2006 -  Gode grep når prosjektet blir stort
JavaZone 2006 - Gode grep når prosjektet blir stortEirik Torske
 
Manus System Center Virtual Machine Manager 2008 (R2)
Manus System Center Virtual Machine Manager 2008 (R2)Manus System Center Virtual Machine Manager 2008 (R2)
Manus System Center Virtual Machine Manager 2008 (R2)Lars Silihagen
 
The Grand Tour of Azure Networking
The Grand Tour of Azure NetworkingThe Grand Tour of Azure Networking
The Grand Tour of Azure NetworkingMVP Dagen
 

Similar to 11 erfaringer ditt prosjekt ikke behøver å gjenta (20)

The Client Strikes Back
The Client Strikes BackThe Client Strikes Back
The Client Strikes Back
 
Javascript tar hevn
Javascript tar hevnJavascript tar hevn
Javascript tar hevn
 
20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar20130212 firstpoint citrix seminar 12 februar
20130212 firstpoint citrix seminar 12 februar
 
Monolitter og byggeklosser jon erik solheim - stacc
Monolitter og byggeklosser   jon erik solheim - staccMonolitter og byggeklosser   jon erik solheim - stacc
Monolitter og byggeklosser jon erik solheim - stacc
 
20140128 Firstpoint seminar - Tid For Oppgradering
20140128   Firstpoint seminar - Tid For Oppgradering20140128   Firstpoint seminar - Tid For Oppgradering
20140128 Firstpoint seminar - Tid For Oppgradering
 
Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...
Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...
Dell Solutions Tour 2015 - Neste generasjons Windows Server og System Center,...
 
SkillOpen 2011
SkillOpen 2011SkillOpen 2011
SkillOpen 2011
 
Meetup 9 i KristansandPHP
Meetup 9 i KristansandPHPMeetup 9 i KristansandPHP
Meetup 9 i KristansandPHP
 
AWS på kartet
AWS på kartetAWS på kartet
AWS på kartet
 
GoOpen 2010: Håvard Haug Hanssen
GoOpen 2010: Håvard Haug HanssenGoOpen 2010: Håvard Haug Hanssen
GoOpen 2010: Håvard Haug Hanssen
 
内部MySQL培训.2.高级应用
内部MySQL培训.2.高级应用内部MySQL培训.2.高级应用
内部MySQL培训.2.高级应用
 
Fra silo til micro services
Fra silo til micro servicesFra silo til micro services
Fra silo til micro services
 
Introduksjon til Spring Boot
Introduksjon til Spring BootIntroduksjon til Spring Boot
Introduksjon til Spring Boot
 
Slik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node redSlik kan du prototype enkelt med node red
Slik kan du prototype enkelt med node red
 
Frokostseminar 25.november 2020
Frokostseminar 25.november 2020Frokostseminar 25.november 2020
Frokostseminar 25.november 2020
 
Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...
Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...
Hva må jeg ha klar for å bruke skyen- v/Bjørn Tore Johannessen og Øystein Her...
 
JavaZone 2006 - Gode grep når prosjektet blir stort
JavaZone 2006 -  Gode grep når prosjektet blir stortJavaZone 2006 -  Gode grep når prosjektet blir stort
JavaZone 2006 - Gode grep når prosjektet blir stort
 
Manus System Center Virtual Machine Manager 2008 (R2)
Manus System Center Virtual Machine Manager 2008 (R2)Manus System Center Virtual Machine Manager 2008 (R2)
Manus System Center Virtual Machine Manager 2008 (R2)
 
Hele butikken i skyen
Hele butikken i skyenHele butikken i skyen
Hele butikken i skyen
 
The Grand Tour of Azure Networking
The Grand Tour of Azure NetworkingThe Grand Tour of Azure Networking
The Grand Tour of Azure Networking
 

More from ilmyggo

GodeMinerTilSlettSpill-JavaZone.pdf
GodeMinerTilSlettSpill-JavaZone.pdfGodeMinerTilSlettSpill-JavaZone.pdf
GodeMinerTilSlettSpill-JavaZone.pdfilmyggo
 
JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...
JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...
JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...ilmyggo
 
Lov og rett i skyen JavaZone 2018
Lov og rett i skyen JavaZone 2018Lov og rett i skyen JavaZone 2018
Lov og rett i skyen JavaZone 2018ilmyggo
 
Bekk Teknologiradar 2018 - Modige ledere
Bekk Teknologiradar 2018 - Modige ledereBekk Teknologiradar 2018 - Modige ledere
Bekk Teknologiradar 2018 - Modige ledereilmyggo
 
Atom Feeds Gruser JMS
Atom Feeds Gruser JMSAtom Feeds Gruser JMS
Atom Feeds Gruser JMSilmyggo
 
Tis not agile
Tis not agileTis not agile
Tis not agileilmyggo
 
Arkitektur på vondt og godt
Arkitektur på vondt og godtArkitektur på vondt og godt
Arkitektur på vondt og godtilmyggo
 
Driftbarhet - Steg mot smidig drift, JavaZone 2010
Driftbarhet - Steg mot smidig drift, JavaZone 2010Driftbarhet - Steg mot smidig drift, JavaZone 2010
Driftbarhet - Steg mot smidig drift, JavaZone 2010ilmyggo
 

More from ilmyggo (8)

GodeMinerTilSlettSpill-JavaZone.pdf
GodeMinerTilSlettSpill-JavaZone.pdfGodeMinerTilSlettSpill-JavaZone.pdf
GodeMinerTilSlettSpill-JavaZone.pdf
 
JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...
JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...
JavaZone 2021: Året da åpen kildekode ble diskutert på Stortinget! av Trond A...
 
Lov og rett i skyen JavaZone 2018
Lov og rett i skyen JavaZone 2018Lov og rett i skyen JavaZone 2018
Lov og rett i skyen JavaZone 2018
 
Bekk Teknologiradar 2018 - Modige ledere
Bekk Teknologiradar 2018 - Modige ledereBekk Teknologiradar 2018 - Modige ledere
Bekk Teknologiradar 2018 - Modige ledere
 
Atom Feeds Gruser JMS
Atom Feeds Gruser JMSAtom Feeds Gruser JMS
Atom Feeds Gruser JMS
 
Tis not agile
Tis not agileTis not agile
Tis not agile
 
Arkitektur på vondt og godt
Arkitektur på vondt og godtArkitektur på vondt og godt
Arkitektur på vondt og godt
 
Driftbarhet - Steg mot smidig drift, JavaZone 2010
Driftbarhet - Steg mot smidig drift, JavaZone 2010Driftbarhet - Steg mot smidig drift, JavaZone 2010
Driftbarhet - Steg mot smidig drift, JavaZone 2010
 

11 erfaringer ditt prosjekt ikke behøver å gjenta