Devoxx 2014 [incomplete] summary


Published on

Summary notes for some of the Devoxx France 2014 presentations.

Published in: Software, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Devoxx 2014 [incomplete] summary

  1. 1. Devoxx 2014 summary Artem Oboturov April 24th 2014
  2. 2. Universit´e de la performance by OCTO Tools : benerator at is a tool for test data generation gatling at - stress tool for HTTP graphite at for scalable realtime graphing (e.g. to vizualize performance results) whisper is a fixed-size database of numeric data over time carbon is a backend for graphite metrics library to introduce points of performance measurement collectd is a daemon which periodically collects system performance statistics
  3. 3. Microbenchmarking avec JMH by OCTO JMH is a Java harness for building, running, and analysing nano/micro/milli/macro benchmarks written in Java and other languages targetting the JVM Opensource and a part of OpenJDK project : Start learning by using samples: net/code-tools/jmh/file/tip/jmh-samples/src/main/ java/org/openjdk/jmh/samples/ Annotation-driven framework, generates code from the annotated sources, and bench-marks the generated version (which would better reflect a real execution)
  4. 4. Mesurer directement depuis le CPU: les compteurs de performance by Ullink Overseer is a Java framework that makes it possible on Linux systems by simplifying access to real-time measurement of low-level data such as Hardware Performance Counters (HPCs), IPMI sensors, and Java VM internal events. Overseer supports functionalities such as HPC-management, process/thread affinity settings, hardware topology identification, as well as power-consumption and temperature monitoring. OverHpc relies on libpfm41 for the management of HPCs. Hardware topology information is gathered through the libhwloc library. More data are acquired from IPMI-compatible sensors with the Intelligent Platform Management Interface3, a standardized interface used by system administrators to manage computer systems and monitor their operations.
  5. 5. Ansible in action - le provisionning au bon niveau d’abstraction Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates. [Just another one] DevOps util Reusable playbooks : Ansible Galaxy
  6. 6. Deux ann´ees de Continuous Delivery au pays des traders by GLE:FP Maven plugins for deployment and versioning management: Deployit used to deploy a Deployment Package to an single environment Build-number is designed to get a unique build number for each time you build your project http: // Versions is used when you want to manage the versions of artifacts in a project’s POM Deployment MUST be automated Test are better in ISO-production environment Release should become a ”Non-event”
  7. 7. Am´elioration de build maven by Courtanet Inifinitest : each time a change is made on the source code, all the tests that might fail because of those changes, are run be an IDE plugin Moreunit another unit test framework Maven timeline plugin
  8. 8. Les Applications R´eactives : un nouveau paradigme pour lever les d´efis de l’´economie num´erique by InTech Reactive manifesto by Typesafe (Scala, Akka, etc) Look into Scala Promise API and Java 8 CompletableFuture API
  9. 9. IntelliJ IDEA tips and tricks by Jetbrains Use keyboard only To learn how to use only the keyboard, try to use the Key promoter plugin which shows to user how one can easily make the same action using only keyboard (menus and toolbar button mouse clicks initiates shortcut display). Print the IntelliJ keymap for your OS and use it Use structural search Multi-cursor edit
  10. 10. Building a Real-Time Risk Analysis System in Java by GLE:FP (1) Maven best practices proposed : source: javaformatter + jrx https: // https: // packaging: appassembler + war + assembly appassembler-maven-plugin/ release: release + changes + buildnumber https: // maven-release-plugin/
  11. 11. Building a Real-Time Risk Analysis System in Java by GLE:FP (2) Maven best practices proposed : documentation : site markdown + sample/snippet + linkcheck + pdf + umlgraph dependency: version + overview + enforcer-plugin + dependency-tree test : pitest + failsafe + jacoco + checker Exception monitoring in logs (The Elasticsearch ELK Stack) logstash is a tool for managing events and logs elastic search kibana - the RT data visualization dashboard
  12. 12. BOF BrownBagLunch France The concept (from Wikipedia): a brown bag seminar, session or lunch is generally a training or information session during a lunch break. The term ”brown bag” refers to the packed lunch meals that are either brought along by the attendees or provided by the host. In the USA, these are often packed in brown paper bags. Brown bag seminars will normally run for one or two hours. The site: Specialists list:
  13. 13. Virtualization 2.0 et kernel linux by Xebia No hypervisor : use linux control groups Control hardware resource usage Resources isolation via namespaces lxc-{create | start | ls | stop }
  14. 14. 33 things you want to do better by T. Bujok (1) Libraries: lombock annotations to be used to simplify Java POJOs @Data @Builder @Log4j @Cleanup @Delegate lambdaj slf4j TODO : remove .printStackTrace - it does not show the source of error; TODO : remove Log4j loggin with no formatting clause (idem) spock is a testing and specification framework for Java and Groovy applications. unitils is an open source library aimed at making unit and integration testing easy and maintainable @InjectInto @InjectIntoStatic gauva : cache, optional, multivalue sets, etc
  15. 15. 33 things you want to do better by T. Bujok (2) Testing: junitparams @Params, $() = new Object[]{}; awaitility await().atMost(5, SECONDS).until(costumerStatusIsUpdated()); byteman byte code injection : could be used for tracing, etc Try to use more Groovy for scripting and development