Links

  • 1. Sogeti
  • 2. JBoss
  • 3. IBM
  • 4. Oracle
  • 5. SpringSource
  • 6. NL-JUG
  • 7. Java

Archives

Syndication  RSS 2.0

RSS 1.0
RSS 2.0

Bookmark this site

Add 'JCN Blog' site to delicious  Add 'JCN Blog' site to technorati  Add 'JCN Blog' site to digg  Add 'JCN Blog' site to dzone

Posted by Jaap Coomans at 10:12 on Wednesday 13 November    Add 'JFall 2013: Designing Distributed Programs with a Raspberry Pi cluster' site to delicious  Add 'JFall 2013: Designing Distributed Programs with a Raspberry Pi cluster' site to technorati  Add 'JFall 2013: Designing Distributed Programs with a Raspberry Pi cluster' site to digg  Add 'JFall 2013: Designing Distributed Programs with a Raspberry Pi cluster' site to dzone

De eerste sessie na de middagkeynote op JFall 2013 was voor mij “Designing Distributed Programs with a Raspberry Pi cluster” door Arjan Lamers van First8. Natuurlijk kwam ik in eerste instantie af op het geek-appeal van de titel, maar al snel bleek dit ook inhoudelijk een erg goede sessie.

De essentie van het verhaal was dat Arjan een proof-of-concept omgeving had gemaakt voor gedistribueerd programmeren met behulp van een batterij Raspberry Pi’s. De hardware setup bestond uit twee clusters van 4 Raspberry Pi’s, per cluster aangesloten op een switch. Deze twee switches waren onderling met elkaar verbonden. Zo had hij dus voor een zeer beperkt budget twee “datacenters” met ieder 4 nodes. Naast dat dit voordelig, compact en geeky is, brengt het ook als voordeel mee dat de Pi’s traag zijn. De redenatie van Arjan: als je je gedistribueerde applicatie op een Pi al goed kan laten performen, dan komt het in je productiecluster zeker goed. Daar valt uiteraard wat voor te zeggen.

Om het geheel te demonstreren had Arjan een eenvoudig gedistribueerd programma gebouwd: Pigs in Space. Niet veel meer dan een veld waar ruimteschepen overheen vliegen met collision detection om te zorgen dat ze niet door elkaar heen vliegen. Met behulp van Hazelcast was het veld in sectoren opgesplitst en verdeeld over de diverse Pi’s. Aan de achtergrondkleur van de sector was af te lezen welke Pi de sector onder zijn hoede had.

Hoewel dit allemaal geen rocket-science lijkt, is het wel een hele goede opzet om basale problemen van gedistribueerd programmeren duidelijk te maken. Zo was al snel te zien dat op de grenzen van de sectoren, waar de ruimteschepen van de ene Pi naar de andere Pi overgingen, ruimteschepen vaak samenklonterden. Ook liet Arjan zien wat er gebeurde in geval van fail-over. Als hij een of meerdere Pi’s eruit trok, was duidelijk te zien dat het geheel even haperde en dat in eerste instantie de sectoren van de uitgevallen Pi’s wel snel werden overgenomen, maar niet eerlijk verdeeld werden onder de andere Pi’s. Dit evenwicht werd later hersteld. Ook was duidelijk te zien dat ruimteschepen in drukke sectoren langzamer vlogen. Een probleem dat zichzelf alleen maar versterkt, omdat ruimteschepen sneller zo’n sector in vliegen dan eruit.

Voor mij persoonlijk was de grootste eye-opener zijn demonstratie van het split-brain probleem. Hiervoor had hij afgedwongen dat de failover van elke Pi zich in het andere “datacenter” bevond. Een opzet die veel bedrijven in werkelijkheid ook gebruiken om de geografische risico’s te spreiden. Na een tijdje werd de connectie tussen de twee datacenters verbroken (split-brain). Zoals verwacht ging alles in principe gewoon door. Sectoren uit het andere datacenter werden overgenomen door de Pi’s in het overgebleven datacenter. Het interessante deel kwam echter toen de verbinding werd hersteld. Op dat moment waren er twee waarheden: de waarheid in het ene datacenter en de waarheid in het andere datacenter. Het gevolg was dat op beeld de ruimteschepen van hot naar her versprongen. Voor de Facebooks en de Amazons van deze wereld zijn dit serieuze problemen waarvoor een herstelstrategie bedacht moet worden: doe je een merge, kies je de ene waarheid boven de andere? In het geval van Amazon wist Arjan te vertellen dat ze in zo’n geval zo vriendelijk zijn om je twee shopping carts bij elkaar op te tellen: ze willen natuurlijk geen omzetverlies :)

Ondanks dat er maar beperkt code op het scherm te zien was, was dit toch een van de beste sessies van de dag. Een sessie die je aan het denken zet.

Wil je meer weten over PigsInSpace? Arjan heeft de source op GitHub gezet:
https://github.com/First8/pigsinspace

Posted by Jan-Hendrik Kuperus at 11:44 on Thursday 12 November    Add 'The Quest for Parallelism – Slides from JFall' site to delicious  Add 'The Quest for Parallelism – Slides from JFall' site to technorati  Add 'The Quest for Parallelism – Slides from JFall' site to digg  Add 'The Quest for Parallelism – Slides from JFall' site to dzone

Yesterday, at the 2009 edition of JFall, I gave a talk about parallelism. The slides from that presentation can now be downloaded here.

For those of you who missed my talk, stay tuned to this blog. I am working out a summary article.

–JH

Posted by Rene de Groot at 22:08 on Monday 15 October    Add 'WS-Security: is it really that simple?' site to delicious  Add 'WS-Security: is it really that simple?' site to technorati  Add 'WS-Security: is it really that simple?' site to digg  Add 'WS-Security: is it really that simple?' site to dzone

De Web Services Security (WS-Security) sessie werd gegeven door Eelco Klaver van E.Consulting. De sessie begon met de uitleg waarom WS-Security niet vaak gebruikt wordt, maar dat het toch nodig is. Dit toonde hij met cases om af te sluiten met overdonderende XML configuratie voorbeelden om twee WS-Security frameworks te vergelijken.

Read the rest of this entry »

Posted by Jaap Coomans at 21:57 on Friday 12 October    Add 'Java SE 6 Top 10 Features, Java SE 7 and OpenJDK' site to delicious  Add 'Java SE 6 Top 10 Features, Java SE 7 and OpenJDK' site to technorati  Add 'Java SE 6 Top 10 Features, Java SE 7 and OpenJDK' site to digg  Add 'Java SE 6 Top 10 Features, Java SE 7 and OpenJDK' site to dzone

Deze sessie werd gegeven door Chuk Munn-Lee in de eerste serie van parallel sessies. Zoals de titel al verklapt gaat het hier over de top 10 features in Java SE 6 en Java SE 7. Wegens een gebrek aan tijd werd het Java SE 7 deel echter zeer vluchtig behandeld. Daarom zal deze post voornamelijk ingaan op de Java SE 6 features.

Read the rest of this entry »

Posted by Jaap Coomans at 15:15 on Friday 12 October    Add 'Scalable as Google, Simple as Spring' site to delicious  Add 'Scalable as Google, Simple as Spring' site to technorati  Add 'Scalable as Google, Simple as Spring' site to digg  Add 'Scalable as Google, Simple as Spring' site to dzone

Hoewel niet de hele presentatie kon worden gegeven wegens tijd gebrek was het een erg interessante sessie over hoe de complexiteit te verminderen en de performance te verhogen in een SOA architectuur. De sessie werd gehouden door Owen Taylor van Gigaspaces Technologies, Inc.

SOA architectuur biedt veel voordelen zoals makkelijke integratie en flexibiliteit maar heeft ook een aantal nadelen. Een aantal nadelen van SOA architectuur is dat het vrij complex kan worden en SOA zorgt voor overhead. Volgens Owen Taylor is het gevolg van deze nadelen dat een SOA architectuur bijna niet toegepast kan worden op business-critical applicaties.

Read the rest of this entry »

Posted by Jaap Coomans at 13:16 on Friday 12 October    Add 'Java FX Script and Consumer JRE: Towards easier development and deployment of Java applications' site to delicious  Add 'Java FX Script and Consumer JRE: Towards easier development and deployment of Java applications' site to technorati  Add 'Java FX Script and Consumer JRE: Towards easier development and deployment of Java applications' site to digg  Add 'Java FX Script and Consumer JRE: Towards easier development and deployment of Java applications' site to dzone

Deze sessie werd gehouden door Raghavan N. Srinivas, CTO of Technology Evangelism bij Sun Microsystems

Het primaire doel van JavaFX, voorheen F3, is om het creëren van GUI’s makkelijker te maken. Het is scripting friendly en hevig beïnvloed door Scalable Vector Graphics (SVG). Door de focus op het ontwikkelen van GUI’’s is het nog niet echt een scripttaal. JavaFX is in vergelijking met Java meer declaratief en compositioneel. Het is belangrijk dat je kan zeggen wat je wil, waarbij je het “hoe” weg kan laten.

Read the rest of this entry »

Posted by Jaap Coomans at 13:12 on Friday 12 October    Add 'Adobe Integrated Runtime' site to delicious  Add 'Adobe Integrated Runtime' site to technorati  Add 'Adobe Integrated Runtime' site to digg  Add 'Adobe Integrated Runtime' site to dzone

Vlak na de keynote van Adobe zat een sessie over de Adobe Integrated Runtime, of ook wel AIR. De sessie werd gehouden door een van de Evangelisten van Adobe, Daniel Dura. Hij opende met een verhaaltje over hoe applicaties in de laatste jaren van de desktop naar het internet zijn verhuisd en wat daar voor nadelen aan kleven. Zo ben je bijvoorbeeld niet meer aanwezig op de desktop van je klant, kun je over het algemeen niet makkelijk multi-window interfaces maken en zijn dingen als system tray icons onmogelijk.

Read the rest of this entry »

Posted by Jaap Coomans at 23:48 on Thursday 11 October    Add 'The secrets of concurrency' site to delicious  Add 'The secrets of concurrency' site to technorati  Add 'The secrets of concurrency' site to digg  Add 'The secrets of concurrency' site to dzone

De sessie werd gehouden door Heinz Kabutz, een van de Java Champion’s, dus dat belooft wat. Tot mijn grote opluchting heeft de sessie een zeer overzichtelijke opzet. Kabutz gaat namelijk zijn tien wetten van concurrency met ons doornemen. Om te voorkomen dat we “lost in translation” raken laat ik de aansprekende titels van deze wetten in het Engels.

Read the rest of this entry »

Posted by Jaap Coomans at 22:56 on Thursday 11 October    Add 'Petje af' site to delicious  Add 'Petje af' site to technorati  Add 'Petje af' site to digg  Add 'Petje af' site to dzone

USB Rocketlancher

Quasi nonchalant hadden Barend en ik ons opgesteld ter hoogte van de Ordina stand. Daar werden wij gevraagd mee te doen aan de petje-op-petje-af quiz. Op het spel stond een tas met ordina-goodies en…. een USB-rocketlauncher van thinkgeek.com. Uiteraard waren wij daar wel voor te porren. Na een vraag over het aantal Javanen bij Ordina (altijd het hoogste antwoord kiezen natuurlijk…) kwamen de Java-vragen in de trant van: is goto een keyword: Ja of Nee. Appletje eitje dus.

Totdat gevraagd werd of de Borobudur op Java ligt… tja, da’s ook Java. Als één van de weinige wist Barend deze non-nerd vraag te overleven en werkte zich vervolgens met succes naar de finalevraag. Zijn enig overgebleven opponent gokte het aantal classes in de Java SE SDK op 250. Als ware waaghals koos Barend niet voor de voor het grijpen liggende overwinning met 251, maar gokte iets gewaagder op 1000. Doordat het juiste antwoord ergens rond de 3400 ligt is Barend sinds vandaag de trotse eigenaar van een USB Rocketlauncher. Gefeliciteerd, een Sogetist is de beste Javaan van de JFall geworden!


© 2019 Java Competence Network. All Rights Reserved.