Blogg

Här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad, följ oss på Twitter

Callista medarbetare Erik Lupander

ArchConf, dag 2 - sammanfattning av min dag

// Erik Lupander

För egen del koncentrerade jag mig under dag 2 av ArchConf mig på på föreläsningar kring distribuerade system, Apache Kafka och JWT. Här kommer mina reflektioner från dagen.

ArchConf kör ett litet annorlunda upplägg än många andra konferenser. Samtliga föredrag är 90 minuter långa och dessutom är en hel del ämnen uppdelade i två delar som alltså ger tre timmar totalt inom ämnet ifråga. Överlag är jag positivt inställd till 90-minutersföredragen då det ger helt annan möjlighet till djupdykning och omfång, men visst kan det ibland bli väldigt tröttande att sitta 90 minuter i taget och lyssna. Dock så har samtliga föreläsare jag sett under dagen varit duktiga och erfarna presentatörer vilket givetvis underlättar för oss åhörare.

Distribuerade system

Förmiddagen ägnades åt Tim Berglunds två pass kring Distribuerade System. Lustigt nog inledde Tim sitt anförande med att varna oss för att syssla med distribuerade system överhuvudtaget - “if you want to live a normal life and have hobbies, don’t do it!”. Givetvis sagt med glimten i ögat, men faktum kvarstår att ett systems komplexitet ökar rejält när man börjar sprida ut det över tid och rum.

Tim Berglund Bild: Tim Berglund förklarar läsreplikering med hjälp av kaffemetaforer

Det var en mycket grundlig dragning av många olika aspekter kring distribuerade system, replikerade databaser, varför Starbucks inte körs på 2-fas commmits och slutligen genomgång och betygsättning av ett antal olika arkitekturer för distribuerade system. Jag avser återkomma med en detaljerad genomgång av föredragen, men en liten hint kan vara att Tim är mycket förtjust i Cassandra och Kafka.

Streaming Architectures with Kafka

Efter en hamburgerlunch som får nöja sig med betyget två lambda-arkitekturer av fem möjliga, så lyssnade jag på Mark Richards och hans föredrag om strömmande arkitekturer med Apache Kafka.

För snart två år sedan pratade jag om Spring XD på vår egen Cadec. Spring XD må vara heldött nu (ersattes iofs av Spring Cloud Data Flow), men mycket av tankegångarna kring data ingestion återkommer i föredraget kring Kafka. Operationell data (mätvärden etc.) passar sig väldigt väl för Kafka medan man skall vara försiktig med att låta Kafka hantera transaktionell data (ordrar etc) eftersom Kafkas lösning med “partitioned topics” har och har haft en del bekymmer med förlorade meddelanden och meddelanden som processas flera gånger.

Det finns dock ett nytt Streams API som skall vara betydligt bättre lämpat för transaktionell data än Kafkas standard-API.

Annars är det väl värt att poängtera att Kafka är enormt mycket snabbare än klassiska message brokers så länge meddelandestorleken hålls nere. Där RabbitMQ och ActiveMQ maxar kring ca 4K msg/sec så kan Kafka hantera uppemot 1M msg/sec under optimala förhållanden - dvs när meddelandestorleken understiger 10 bytes.

Auth as a Microservice

Eftermiddagen avslutades med ett besök på ett något för välbesökt föredrag (luft är bra) kring autentisering i microservices med betoning på JWT, arkitekturella mönster kring detta och säkerhetsaspekter kring JWT att tänka på.

Inget revolutionerande, men en bra primer kring JWT och vilka fallgropar som kan finnas avseende val av signeringsmetod, problematik kring revoke av JWT-tokens, refresh tokens och de “mellantillstånd” där en användare kan vara autentiserad men ändå inte skall få access till dina API:er.

Föredragshållaren Brian Pontarelli var väldigt entusiastisk och ganska annorlunda till sätt och utstrålning (ungdomlig) jämfört med de andra föreläsarna jag hittills sett under konferensen.

Kvällens keynote

Efter middagen så lyssnade vi på war stories kring komplexitet av den underhållande och extremt snabbpratande Venkat Subramaniam. Fantastiskt att se och höra en människa prata i 60 minuter utan att synbart andas.

Hur som så var det en rolig och vettig keynote kring det tidlösa konceptet inom vårt gebit - dvs att hålla saker och ting enkla och väl separerade från varandra - något som alltid är värt att få repeterat för sig.

Tack för att du läser Callistas blogg.
Hjälp oss att nå ut med information genom att dela nyheter och artiklar i ditt nätverk.

Kommentarer