//Build/ 2016

Bro

Pier Madness

Fail Bail Jail

Fail Bail Jail

Jag har precis gått från Pier 38 till Pier 39, vilket kanske inte låter som någon större bedrift, låt mig förklara.

Jag tar det från början. Min plan för dagen var att först besöka REI som jag varit lite nyfiken på ett tag och sedan ta mig ner till området kring Fisherman’s wharf  för att hitta ett mysigt hak och skriva det ni nu läser. Betyder det att planen gick i lås? Tja, ungefär.

Jag bestämde mig för att fotvandra ner till REI som ligger i SoMa. Jag går sydöst längs 6th street. Ett par kvarter söder om Market börjar stan ändra karaktär och jag får lite känslan av att inte passa in.
Efter ytterligare några kvarter börjar det bli mer nedgångna industrilokaler och den där typen av barer som man mest ser på dåliga polisserier på TV. Hus och trädgårdar, dock inga träd i dom, dekoreras av kilometervis med taggtråd, lite getto-chict.
Jag ser inte längre några andra människor till fots ute på gatorna. Efter att passerat ett par motorvägsöverfarter börjar jag närma mig mitt mål. Jag ska bara gå ner för Bryant street en bit, det visar sig att vägen passerar framför stadens domstolsbyggnad och att området är fullt med härligt nedgångna Bail Bonds-firmor som jag också bara tidigare sätt på film, det ger hela stället en ”skön” känsla av urban desperation. En polisbil glider sakta förbi.

Läst senare på webben, ”The zone around Sixth and Mission can be sketchy if you’re walking alone, and at the very least the unschooled wanderer could come away with an impression of nothing more than highway overpasses and warehouses.” och jag kan bara hålla med.

Efter mitt besök på REI så bestämde jag mig för att prova min första Über, skapade konto, registrerade uppgifter, kort och sånt. Vilket fungerade hyfsat bra från mobilen.  Det blev svårare när jag skulle välja destination, efter ett par försök föreslog appen  Pier 38 och jag tänkte, ”jaja, det är nog ganska nära”. Efter en liten stund kommer Nancy i sin lilla svarta Toyota. Hon körde inte alls den sträckningen som jag föreställt mig men turen var ju förbetald och bara jag kom dit jag skulle så… Vi småpratar lite om allt möjligt, plötsligt stannar Nancy bilen och säger, ”nu är vi framme, Pier 38, det var hit du skulle”.

Jag kliver ur och ser mig om, visserligen är det en pir och vid vattnet men inte alls där jag trott, det var nog inte hit jag skulle.

Ej röd bro

En rejäl bro, men inte röd

Pier 39, Fisherman’s wharfs mest prominenta del, ligger bredvid Pier 35 och ca 4 kilometer därifrån ligger Pier 38. På vägen dit passerar man, i ordning, bland annat pirerna 31, 26, 22 1/2, 14, 3, 7, 15, 22, 31. Kanske inte en av de mer vedertagna talserierna. Så, bara 4 kilometer till på betong i stekande sol innan jag är framme. Det var i alla fall en vacker promenad med staden på ena sidan, vattnet på den andra och den dubbeldäckade motorvägsbron på den tredje.

Retrospektiv Margarita

Margarita

Toppen Margarita

I Fisherman’s wharf hittar jag ganska snabbt en liten Tequilabar, den ligger ett kvarter upp från de riktiga turistfällorna så det är många lediga bord. Snart sitter jag i den Kaliforniska vårsolen med en mycket läskande Margarita framför mig och försöker sammanfatta intrycken från det nyss avlutade //Build/ 2016.

Det började sedvanligt med registreringen, om man utfört sin online anmälan korrekt kunde man registrera sig med hjälp av en streckkod och en terminal, sen var det 90 minuters kö för att få sitt konferenspaket. Det fanns som tur var en alternativ kö, där man fick hjälp med att skanna streckkoden och de delade ut konferenspaketet direkt, den kön tog 10 minuter.

Registrerad och nöjd bär det av till Press Club för kvällens första event, det blir snart ganska fullt, men det är en högklassig tillställning med bra stämning. Därefter blir det Swedes@Build på Jillians, inte riktigt lika snofsigt men en härlig stämning så vi går vidare till Thirsty Bear Brewery för ett par intressanta öl till, bl a en Panda som smakade väldigt mycket choklad. Kanske inte min favorit.

I år hade de valt att göra om konferensen för att leverera mer av det som tidigare års delegater saknat och tagit bort det som de var missnöjda med. Så ingen frukost på konferensen.  Det nya upplägget var till en början ganska förvirrande och blir nog det igen efter ett par Margaritas till.

06.30 bara att tvinga sig upp för att hinna med en väldigt onyttig Diner-frukost innan det är dags att ställa sig i kön till keynoten.

Satya Nadella inleder konferensen med ett inspirerande tal om Microsofts relation med utvecklarna, teknik och öppenhet. Det var inte de riktigt stora nyheternas år men det fanns mycket som var intressant, inspirerande och roligt.

Visual Studio 2015, update 2

Några godbitar:
Xamarin for VS
VS Tools for Apache Cordova
VS Tools for UWA Development
Python Tools for VS

Xamarin har nu integrerats i alla versioner av Visual Studio  2015, ja även community edition, ladda hem update 2 och skapa lite sköna cross-platform appar.

https://www.visualstudio.com/en-us/news/vs2015-update2-vs.aspx

Visual Studio 15 och .NET Core

Om ni känner er lite mer vågade kan ni prova förhandsversionen av Visual Studio 15, käckt namn som säkert inte kommer orsaka några missförstånd 🙂

Stödjer Cross-Platform utveckling med .NET Core som kommer existera parallellt med .NET Framework och Mono.

.NET Core går att köra på Windows, OS X och ett flertal Linux distributioner. .NET Core är mycket mer modulärt än .NET Framework och kan anpassas efter behov.
Källkoden är distribuerad på GitHub så det är bara att sätta igång och skapa sin egen variant eller hjälp MS lite på traven.

https://www.visualstudio.com/news/vs15-preview-vs

Men vad hände med de andra versionerna då?

Jag citerar Scott Hanselman:

  • ASP.NET 5 is now ASP.NET Core 1.0.
  • .NET Core 5 is now .NET Core 1.0.
  • Entity Framework 7 is now Entity Framework Core 1.0 or EF Core 1.0 colloquially.
Målbild

Målbild för .NET

IoT

Vårens utbildningsresa för Microsoftgänget visade sig vara ”spot on”. Under konferensen satsades det mycket på sessioner och labbar kring IoT och Azure IoT Suite. Windows 10 IoT Core stödjer nu Raspberry PI 3 och det marknaden för tillbehör har verkligen exploderat.

Här är en intressant länk Connected Service for Azure IoT Hub

Docker

Docker för .NET finns som beta, vill man testa får man anmäla sig.

https://beta.docker.com/

Även Bash är på gång till windows.

Microsoft Bot Framework

De har ett gäng intressanta och underhållande APIer för kognitiv dataanalys, ”cognitive microservices”. Man kan läsa av ansiktsuttryck, analysera innehållet i bilder, tolka naturligt språk och mycket annat.

Azure Service Fabric

En molnbaserad distribuerad platform för att hantera microservices.

Azure Service Fabric översikt

DocumentDB

DocumentDB Microsofts Azure-baserade NoSQL databas stödjer numera Apache MongoDB drivers vilket innebär att ni som har MongoDB skills kan köra era verktyg och bibliotek mot DocumentDB.

Destination Mars

Mars

Destination Mars!

Microsoft, JPL och NASA har tagit fram ett event för ett av NASA’s besökscenter.  En 3D upplevelse med Hololens på huvudet och Buzz Aldrin som ledsagare. Vi fick mäta avståndet mellan ögonen, jag vann(?) i min besöksgrupp. Därefter slussades vi in i ett rum där vi fick möjlighet att ta på och justera våra Hololens’s innan upplevelsen startade. Det var första gången jag haft möjlighet att testa Hololens, det var en intressant upplevelse, den ser mycket klumpigare ut än vad den känns när man bär den. Därefter fick vi gå runt på Mars yta. Jag lämnar detaljerna av upplevelsen till era besök på Kennedy Space Center. Det var ett mycket populärt event på konferensen och det var långa köer men det var väl värt väntan tycker jag.

MS Build Hackathon 2016

MS Build Hackathon 2016 gick av stapeln i ett av Microsofts kontor i San Francisco och startade strax efter att den sista föreläsningen på konferensen avslutats.

Jag anslöt mig till ett trevligt gäng från ett konkurrerande bolag när det återstod sex timmar av Hackathonet, jag hade tänkt hjälpa dom med den video som enligt reglerna skulle produceras och publiceras på Youtube inom Hackathonet’s 24 timmar. Tyvärr blev det inte mycket tid till att åstadkomma något vettigt då det blev en mycket stressig avlusning in i det sista. Men det var kul att se hur de organiserat det och vad de olika lagen lyckats åstadkomma. Jag tror att Microsoft filmade en del, så kanske ni kan hitta något om ni letar.

Nu är det dags för en avslutande Margarita.

Publicerad i .NET, DevOps, DOcker, Windows

Test av Google Cloud Vision API

I torsdags släppte Google Beta-versionen av Google Cloud Vision API. Via API-et kan man skicka upp bilder och få tillbaka taggar som beskriver vad bilden visar – allt från vilken blomma som finns på bilden till kända landmärken, eller att kategoriera olämpligt innehåll vilket är användbart för tjänster där användare laddar upp bilder. Vidare kan API-et detektera ansikten och deras ansiktsuttryck samt tolka text. Något som explicit undantas är ansiktsigenkänning, en funktion vi vet att Google är bra på redan. Om man vill ha ansiktsigenkänning kan man istället använda Microsofts motsvarande vision-API som har liknande funktioner. Microsofts API har dessutom funktioner relaterade till röst och video.

Tjänsterna öppnar helt klart nya möjligheter men ännu lite oklart om de kommer att ta marknaden med storm eller förbli ett litet API i marginalen bland många andra.

Jag provade att ta en bild ut från kontoret och se vad Google-tjänsten kunde gräva fram ur den. Urvalet objekt är ganska stort: Cykel, bro, väg, buss, hus, vatten, övergångsställe, gångbana. Spännande!

utsikt-kungsbron-small

Jag registrerade mig, skaffade en API-nyckel och curl-ade upp bilden till API-et. Svaret var:

”description”: ”transport”,
”score”: 0.95152622

Ja, den taggen funkar och utgör faktiskt en riktigt kompakt och funktionell beskrivning av hela bilden.

Men jag var nyfiken på mer. Jag hittade en skiss jag undrade om den kunde tolka:

whiteboard

svaret på den frågan blev

”description”: ”sketch”,
”score”: 0.8966288

Hm. ok.

Publicerad i Uncategorized

Code Night #4: Continuous Delivery med Tutum och Docker

I torsdags körde vi workshop hos IDG på Code Night #4 som hade temat Continuous Delivery.

Kvällen blev mycket lyckad och vi fick mingla runt bland många likasinnade.

Kvällen inleddes med korta föredrag på ämnet för att sedan bjuda in till workshop där Kristoffer och jag presenterade och demade våra erfarenheter kring att produktionssätta en tjänst med Docker-teknik på molntjänsten Tutum och AWS.

IMG_4880

Många var intresserade av att höra oss berätta om hur man kan bygga en applikation på det vis man verkligen vill, från scratch, nu 2016.

Syret i lokalen tog fort slut men folk höll ut och fick höra oss berätta om hur vi byggde en systemproduktionslina baserad på Docker, Tutum, GoCD och Amazon EC2, från källkodsrepo till produktionsmiljö. Vi gick igenom hur det är uppbyggt och fungerar och hur man arbetar med det.

Vår story baserades på utvecklingsresan med http://www.welcomeapp.se hösten 2015 där vi på kort tid tog vi fram frontendsystem, backendsystem med klustring, lastbalansering, backup, MQ och webbsajt samt flera pipelines.

Slides från kvällen: http://www.slideshare.net/KristofferVidmo/continuous-delivery-med-tutum-och-docker

Demosystemet (Spring Boot) finns på github: https://github.com/cag-demo/cag-demo-api

Under kvällen utlovade vi en en kvällslabb på temat Java-server med Docker i molnet, inbjudan till den finns här: https://blog.cag.se/?p=1387

Publicerad i Cloud Computing, Continuous Delivery, DevOps, DOcker, Java, Linux, Uncategorized

Labb Java-server med Docker i molnet

Torsdagen den 10:e mars kl 17.00-20.00 c:a kör vi en kvällslabb på kontoret i Kista där vi lär oss installera en Java-server som Docker-container i molnet.

Metoden är också användbar för att bygga tjänstestubbar för REST och SOAP.

Vi kommer att inleda med att installera Docker och clona repos med Git.

Formen är BYOL (Bring Your Own Laptop), men det gör alls inget om bara hälften har laptop så vi kör två på varje.

Labben är kostnadsfri och antalet platser är begränsade.

Vi bjuder på en lättare förtäring.

Anmäl dig till daniel.marell@cag.se

Adressen är
Jan Stenbecks Torg 17
Kista

Varmt välkomna!
Daniel Marell
Kristoffer Vidmo

Publicerad i Uncategorized

Jfokus 2016

Nu är årets Jfokus historia. I ett försök att ge en översiktlig bild av innehållet kategoriserade jag sessionerna enligt följande:
jfokus 2016

Den översta kategorin hamnade allt som är relaterat till “vanlig programutvecking med Java”: Metrics-verktyg, Lambda-knep, concurrency, DDD, JEE, JPA etc. De flesta sessionerna hamnade i detta fack, vilket är naturligt när majoriteten av besökarna är Java-utvecklare.

En stor del av sessionerna handlade som vanligt om Oracles arbete med och planer för Java-plattformen. Detta år var dessa sällsynt oinspirerande. Men ok, det kanske egentligen inte är så dumt om det mest intressanta sker med hjälp av själva Java-plattformen och inte i plattformen själv.

Mikrotjänster är heta och de möjliggör att många team kan jobba effektivt ihop. Bert Ertmans session var suverän där han på ett insiktsfullt och begåvat sätt målade landskapet kring mikrotjänster. En insikt jag bär med mig är att inte falla i återanvändningsfällan när man implementerar mikrotjänster. Hela idén är att tjänsterna ska vara oberoende och inte skapa ett CM-kaos. Kopiera faktiskt hellre koden, och inför absolut inte en gemensam AbstractMicroservice.

En annan insikt är att organisationen du arbetar i bör spegla arkitekturen du har. En mikrotjänstekitektur bör stödjas av en organisation där teamen äger sina tjänster.

Vi återkom ofta till nackdelarna och svårigheterna med mikrotjänster i och med att de drar med sig alla gamla problem som hör till distributed computing (*). En mikrotjänstearkitektur gör bäst ifrån sig i större organisationer med många team. Och kungen av mikrotjänsteramverk är fortfarande Spring Boot. JHipster som stämplar ut en applikation med Spring Boot och AngularJS var föremål för ett par sessioner:

En tydlig uppmaning från flera håll var: “Tänk inte ens tanken att införa mikrotjänster innan ni har DevOps på plats”

Continuous Delivery och Docker är något som de flesta redan accepterat som något åtråvärt, men fortfarande är inte majoriteten av oss där. En mikrotjänstearkitektur gör det enklare att nå Continuous Delivery och Docker passar också som handsken där. Många har provat Docker men få kör det än så länge i produktion. Jag var en av de få som fortfarande höll upp handen när Ray Tsang från Google sade “och håll kvar handen uppe ni som också har Docker i produktion”. Yes! En av få.

kubernetes

Dan North höll som vanligt en suverän session. Jag lyssnade på Beyond Features där Dan sågade modellen “Civil Engineering Shop” för mjukvaruutveckling. Modellen fungerar inte eftersom vi tror att vi vet vad målet är. Det är inga nyheter i den agila världen men ändå värt att återkomma till. Dan liknade vidare mjukvaruutveckling med kirugi, en fungerande liknelse tycker jag. Ingen vill ju egentligen ha kirurgi, men måste man bli opererad vill man bli skuren i så lite som möjligt. Påminner mig när Mattias Karlsson en gång sa något i stil med att “den bästa programvarulösningen är den vi slapp skriva”.

Förvånande lite handlade om automatisk test, vilket på senare år seglat upp i vårt medvetande som en av våra svåraste vardagsnötter att knäcka. Det kanske är så att problemet är så segt och att få eleganta lösningar finns att få föreläsare går igång på det.

På frontend äger AngularJS fortfarande. En session tillägnades uppstickaren React.js. Verktygen på frontendsidan är snabbt på väg upp men är långt ifrån ikapp mognadsmässigt (node, npm, bower). Överhuvudtaget märks det tydligt att frontend är betydligt mer omoget tekniskt än backend. En orsak tror jag är vad jag upplever vara en mer tillbakalutad inställning till beroendehantering, paketversionering och gränssnittkontrakt.

Ingen presenterade en bra lösning på automattestning för frontend.

NoSQL och Big Data var representerat i bara ett par sessioner.

Ämnen som berörde AI dök faktiskt upp i ett par sessioner i år. Det kanske blir fler nästa år.

På sparlåga i år: JEE, icke-Java JVM-språk (Clojure, Scala, Groovy, Ruby, Kotlin)

jfokus avslutning

Tack Mattias och Jfokus-teamet för Jfokus 2016!

Publicerad i Uncategorized

Säkra upp dina tjänster med certifikat från Let’s Encrypt

Nu finns det inte längre några ursäkter att inte ha https påslaget på sina tjänster. Let’s Encrypt (https://letsencrypt.org/) tillhandahåller gratis certifikat som fungerar i alla moderna webbläsare.

Jag roade mig med att sätta upp ett cert på min server hemma och passade på att skapa ett skript som automatiskt förnyar certet innan det går ut. Servern kör CentOS 7 med Apache, men det går lätt att modifiera till annan webbserver/operativ.

Strategin med Let’s Encrypt som jag följde var att låta dem starta en http-lyssnare i samband med att certet skapades. Sedan använder man en ACME-challenge i sin webbroot för uppdateringen för att slippa ta ner webbservern i samband med förnyelsen.

Så här gjorde jag för att skapa certet (man behöver Git och bc installerat på servern):

sudo mkdir /opt/letsencrypt
sudo chown : letsencrypt
git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
sudo servicectl stop httpd.service
/opt/letsencrypt/letsencrypt-auto certonly --standalone
sudo servicectl start httpd.service

Let’s Encrypts script kördes interaktivt och där angav jag hostnamn etc (cybermoose.org och www.cybermoose.org).

Nu finns certet under

/etc/letsencrypt/live/cybermoose.org/...

Man behöver sedan peta in lite SSL-relaterad info i sin virtuella host som lyssnar på det namnet:


ServerName cybermoose.org
ServerAlias www.cybermoose.org


SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/cybermoose.org/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/cybermoose.org/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/cybermoose.org/chain.pem
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4"

Nu ska servern svara på https och leverera grönt hänglås i webbläsaren.

En bra sajt som testar kvaliteten på anslutningen är SSL Labs.

När detta ser bra ut kan man lägga till autouppdatering av certifikatet. För det används ett skript – le-renew-certificates.sh med tillhörande konfigurationsfil le-cybermoose.org-webroot.ini

Alla skript och konfigurationen finns på Github

Publicerad i Cloud Computing, DevOps, Linux

Motorvärmarstyrare med raspberry

Problem att lösa

Min fru jobbar skift.  En tidig kall vintermorgon så är det bra för husfriden att motorvärmaren till bilen har gått på.  Som både snål och miljövän så vill jag inte köra motorvärmaren mer än nödvändigt. Att ställa om en timer har vi gjort i flera år.  Det känns sååååå 2009 numera.

Byggstenar

tellstickFör att lösa problemet rotade jag i lådan och tog fram det jag hittade.  Först en Raspberry Pi att använda som en strömsnål enkel dator.  Sedan tog jag fram min Tellstick och en Nexus strömdapter (för att styra starkströmmarna).  Med dessa prylar så är det uppenbart att det kan bli en lösning.

nexaLösning

Raspberry_Pi_-_Model_AAtt styra Tellstick med en raspberry finns på andra forum att hitta.  Mitt problem var snarare hur tiden ska ställas in för när motorvärmaren ska gå i gång.  Till detta utnyttjar jag Google Calendar (som jag och min fru redan använder).  Var 15:e minut hämtar nu raspberryn hem vår delade kalender i ICS-format (Google stödjer att en kalender har en ”hemlig” url så att man får ut händelserna).  Detta får styra när motorvärmaren går på.  Min idé att utgå från fruns schema (som finns i en kalender) och starta värmaren X minuter före hon börjar föll inte i god jord – men det är såklart en enkel match att lägga till vid senare tillfälle.

Dessutom var det enkelt att göra en hemlig (för mig och min fru) webbsida där vi spontant kan starta/stoppa motorvärmaren i 60 minuter.  Med ett curl-anrop från raspberryn så returnerar webbservern ett resultat när man trycker på en knapp på webbsidan.

Kvar att göra

Jag har fortfarande ingen som sätter i kabeln i bilen.  Det har min fru däremot…..  Nästa bil ska nog ha en inbyggd modern motorvärmare som jag hört finns.
WS2801_pixel_node_100node_a_string_IP68

Extra effekt

Om jag nu har en Raspberry Pi påslagen dygnet runt så kan jag använda mina WS2801-lampor som är vattentåliga.  En programerbar julslinga blir fint i vintermörkret.  Jag har tidigare styrt lamporna med Arduino och Raspberry (se video).  Ni fattar nog poängen att man kan göra något trevligt med det.

Publicerad i C/C++, Linux

OS X El Capitan för Javautvecklare

Jag uppdaterade min Macbook till El Capitan idag och stötte bara på några små saker. Precis som vid uppdateringen till Yosemite och Mavericks så avinstallerar Apple Java 6. Det medför att IntelliJ inte startar efteråt, då dess launcher är hårdkodad att använda Java 6. Dessutom ser fonterna ut som skit rent ut sagt om man kör IntelliJ på en modern Java från Oracle.

Lösningen är att återinstallera Java 6 från Apple.

XCode command-line tools behöver installeras om:

xcode-select --install

Sen kommer det roliga – Apple låser numer ner ett antal kataloger så att inte ens root kan editera innehållet, bl.a. /bin och /usr. Dessutom ändrar de ägare av /usr/local till root, vilket ju effektivt förstör Homebrew.

sudo chown $(whoami):admin /usr/local && sudo chown -R $(whoami):admin /usr/local

följt av

brew doctor

Löste det. Enligt uppgift ska man fortfarande få ha tillgång till /usr/local, men det kan hända att kommande uppdateringar ändrar ägarskapet igen.

Mitt gamla trick att ändra /etc/paths att ha /usr/local/bin först för att kunna köra homebrew-installerade verktyg före Apples var orört efter uppdateringen och /etc/hosts går att editera.

Publicerad i Java, OS X

Bash-Git-Prompt uppdatering

Jag har ju tagit upp bash-git-prompt i ett tidigare upplägg och nu har det skett en uppdatering i dess arkitektur med stöd för teman. Det ger ett mer officiellt sätt att plugga in sig i var prompten ska renderas och hur.

Precis som förut installeras den genom att klona git-repot till sin hemmakatalog och lägga till ett par rader i sin .bash_profile eller motsvarande.


git clone https://github.com/ogr3/bash-git-prompt.git ~/.bash-git-prompt

Nytt i prompten är att den förutom den trunkerade PWD-informationen som visas i fönstertiteln och prompten så kan man även få returvärdet av senaste kommandot att visas.

Det finns två varianter av temat jag skapat med funktionen. Man väljer ett av dem genom att sätta följande variabel i .bash_profile (OS X) eller .bashrc (Linux):

GIT_PROMPT_THEME=TruncatedPwd_WindowTitle_NoExitStatus

eller

GIT_PROMPT_THEME=TruncatedPwd_WindowTitle

Sedan läser man bara in prompten:

source ~/.bash-git-prompt/gitprompt.sh

För att ytterligare underlätta de vanligaste manövrarna tillhandahålls även en fil som deklarerar några tvåställiga alias:

source ~/.bash-git-prompt/git-prompt-aliases

Så här ser alltså min installation ut:

GIT_PROMPT_THEME=TruncatedPwd_WindowTitle
source ~/.bash-git-prompt/gitprompt.sh
source ~/.bash-git-prompt/git-prompt-aliases
Publicerad i Linux, OS X

Microservices till frukost

Frukostseminarium är en mycket trevlig seminarieform, blev jag idag åter påmind om. Idag hade Calllista Enterprise ett mycket intressant och kompakt seminarium http://callistaenterprise.se/event/externa/2015-05-27_Microservices med många arkitektkollegor jag kände igen.

Magnus Larsson beskrev hur man delar upp en mikrotjänstearkitektur och hur man tänker sig att den skiljer sig från SOA.

Demon var cool. Han hade gjort en liten demoapplikation som bestod av en liten flock mikrotjänster och hade sedan lagt på Netflix Zuul, Eureka, Turbine, Hystrix Dashboard, ELK stack och startade förstås upp allting med docker-compose.

Screen Shot 2015-05-27 at 18.49.05

Sedan skalade han upp en av tjänsterna, docker kickar bara in och lastbalanseraren fångar bara upp, och vår inspektion i Kibana visade på att det funkade ju fin-fint.

Sedan testade han kretsbrytaren genom att simulera långa svarstider från en av tjänsterna.

Netflix prylar är definitivt värda besväret att kolla på – ”proven in battle” -de har ju pallat för de 24% av USAs internettrafik som Netflix utgör.

En annan sak jag fick med mig från diskussionerna efteråt, förutom en Callista reklamvattenflaska, var att kolla på Gatling som alternativ till JMeter för att prestandatesta med HTTP. Jag höll på att få med mig en tom frukostkaffekopp ut på Drottninggatan också, men jag kom på mig själv och lämnade tillbaka den.

Tack igen Magnus Larsson för en fantastisk start på den här dagen!

Publicerad i Cloud Computing, DevOps, Java

Kategorier

LinkedIn Auto Publish Powered By : XYZScripts.com