JavaOne – dag 3

JavaOne – dag 3
oktober 3, 2014 Rikard Thulin

Continuous Delivery and Zero Downtime: What Your Architecture Needs to Succeed
Presentationen hölls av Axel Fontaine som även har skrivit Flyway. 20141001_183227Först en obligatorisk gymnastikövning hur ofta publiken deployar till produktion. Den stora majoriteten gjorde det 1 gång per månad, ~10% varje vecka och en enda person varje dag. Det finns många företag som gör det flera gånger varje dag, tex; Facebook, Flickr, Etsy, Stackowerflow. Om man scrollar längst ner på sidan på Stackowerflow så ser man versionsnummret som uppdateras flera gånger varje dag.

För att få CI behöver man:

  • En process (!=vattenfall)
  • En automatiserad bygg process
  • Versionshantering som inkluderar konfiguration. Utvecklare har naturligtvis detta men så är ofta inte fallet med drift/operations.
  • Test. Test och Test.

Ett tips var att läsa en blogpost från Google på deras syn på test. Dom har definierat test i tre storlekar; small, medium och large.

Sedan följde Alex upp med ett par reglar som man bör följa:

  • Använd INTE snapshots. Problemet som uppstår är när du vill promota din snapshot till en ”riktig” release. Det du måste gör med dagens verktyg är att bygga om artifakten vilket i praktiken innebär att du måste testa om saker.
  • Database deltas (eller migrations) skall också ingå i den paketerade artifakten. Dessa behöver dessutom vara bakåtkompatibla, i alla fall om man har höga tillgänglighetskrav.
  • Feature toggle

I den artifakt vi deployar ingår källkoden, konfiguration och databas deltan. En intressant aspekt är att om man använder CD så kan man flytta ganska mycket konfiguration av typen ”det kanske behöver ändras någon dag” till källkoden.

Alex arbetar på Boxfuse som levererar en mjukvara linkande Docker så att man får med även andra delar av stacken (OS, JVM osv). Kan vara intressant att titta på när det släpps.

En ganska självklar sak är att artifakt repot är samma sak som VCS fast för binärer. Har inte riktigt tänkt på det så innan med det blir lite tydligare med CD.
Running Your Spring Apps in the Cloud
Presentationen gick igenom skillnaderna mellan en traditionellt deployad application och hur man gör i molnet. På gränsen till produkt pitch av Clouse Foundery. Produkten verkar dock intressant (öppen källkod).

Microservices on the JVM: A Practical Overview

Presentationen började med frågeställningen, vad är en tjänst?

  • Defined by LOC?
  • UI or not UI?
  • SOA in new clothes?

En viktig aspekt som alla är överens om är att en tjänst måste uppfylla en affärsnytta (vilket för övrigt borde gälla för all mjukvara). Tjänster skall även v ara löst kopplade och ha sin egen livscykel. Det gäller även för dess data. Ett problem som kan uppstå är då tjänster har beroenden till varandra och hur man löser transaktioner. 2-phase commit var inte den rekommenderade lösningen.

Några aspekter som man måste tänka på är:
– Service registration & discovery
– Felhantering/feltolleras (nätverkstopologin kan/kommer att ändras)
– Distribuerad konfiguration
– Automatiserad deployment, CD
– Metrics för att kunna övervaka tjänsterna

Något som det pratas väldigt mycket om på flera sessioner är DropWizard ”Dropwizard is a Java framework for developing ops-friendly, high-performance, RESTful web services”

Sista tippset är att att kolla upp Netflix Hysterix project: ”Hystrix is a latency and fault tolerance library designed to isolate points of access to remote systems, services and 3rd party libraries, stop cascading failure and enable resilience in complex distributed systems where failure is inevitable.”

50 JMS 2.0 Best Practices in 50 Minutes
Ännu en session där det gick undan… Tipsen var högt och lågt, mest på en introduktionsnivå. Naturligtvis gick det inte att avverka 50 tips (slides) på 50 minuter, nåja 40/50 är inte så dåligt 🙂 Ett tips som jag fick med mig är att använda det nya förenklade API för jms 2.0+.

JSF 2.2 in Action
Bra presentation om nyheterna i JSF 2.2, tex. te

Build a Great Java Client for Your Beautiful REST + JSON API
Fick tyvärr inte möjlighet att lyssna på hela presentationen, men dom första 15 minuterna var lovande. Note to self att lyssna på denna session så fort den läggs ut på Parleys.

Kvällen avslutades med att the nullpointers spelade med Javaforums Mattias Karlsson på trummor följt av Oracle appreciation event med Aerosmith som huvudband.

20141001_172434 20141001_204811 20141001_212458

0 Kommentarer

Lämna ett svar

E-postadressen publiceras inte. Obligatoriska fält är märkta *

*

Denna webbplats använder Akismet för att förhindra skräppost. Lär sig hur dina kommentardata behandlas.