Java 12 : what’s new

Java 12 : what’s new

Now that Java 12 is features complete (Rampdown Phase 2 at the day of writing), it’s time to walk throught all it’s fonctionalities that brings to us, developers, this new version. This article is part of a serie on what’s new on the last versions of Java, for those who wants to read the others, here are the links : Java 11, Java 10, and Java 9. Force is to note that besides the switch expression, there is not a lot of…

Read More Read More

Java.Next

Java.Next

Ma première contribution au blog de Zenika est un article qui parle du futur (ou du présent) de Java et des changement pour les développeurs des version 9, 10 et 11. La gouvernance de Java y est aussi abordé. Cet article reprend et résume les articles que j’ai précédement écrit sur ce blog sur Java 9, 10 et 11 : https://blog.zenika.com/2018/10/30/java-next/ Pour ceux qui serait intéressé par une vision plus large du présent et du futur de Java, je vous…

Read More Read More

Java 11 : what’s new ?

Java 11 : what’s new ?

Now that Java 11 is out, it is time to look at the new features that this version brings to us, developers. This article is part of a series on what’s new on the last versions of Java, for those who wants to read the others, here are the links : Java 10, et Java 9. Long Term Support Java 11 is the first Java version that will be Long Term Support – LTS, so with a three years support,…

Read More Read More

Devfest Lille 2018

Devfest Lille 2018

gRPC —– – Rappel réseau, internet – Problématique du format de donnée dans les systeme distribué => modification difficile – Historique des protocoles RCP : CORBA, RMI, EJB, SOAP, REST -> 2008 Protocol Buffers : sérialization (prémice du RCP chez Google : open sourcing partiel) -> 2009 Thrift (Fb) -> 2015 gRPC (basé sur Protocol Buffers) – gRPC : système de RPC avec Protocol Buffers comme sérialization et basé sur des Interface Description Language et incubé depuis peu dans la…

Read More Read More

Java 10 : what’s new ?

Java 10 : what’s new ?

Now that java 10 is out, it’s time to look at all the new functionalities of this version. Like my previous article on Java 9, I will focus on the changes that will impact developers that uses Java leaving aside the changes that are internal/very small/on rarely used API. The new “release train” A very special novelty is the way Java will be released since Java 10 : Java will evolve from a feature release each 2 years (that was close…

Read More Read More

Java 9 performance optimizations

Java 9 performance optimizations

In a previous article on Java 9, I listed all the main new features for the developers : https://www.loicmathieu.fr/wordpress/en/informatique/les-nouveautes-de-java-9-pour-les-developeurs. Here, I will list all the main performance optimizations of Java 9. I will again go through the main JEP : JEP 143: Improve Contended Locking Optimization of Java monitors (lock optimization) when contended (when multiple threads access the same monitor). These are changes inside the JVM that allow siginficant (x2) performance boost on some JVM operations on lock primitives on…

Read More Read More

Démarrage JVM 8 vs 9

Démarrage JVM 8 vs 9

Introduction En parcourant la mailing liste d’open JDK (core-lib-dev) j’ai vu plusieurs threads de mail à propos d’optimisation de temps de démarrage et d’occupation mémoire d’une JVM “minimale“. Ce travail a été réalisé en grande partie par Claes Redestad (Oracle) lors du développement de Java 9. J’ai donc décidé de tester la différence entre un HelloWorld (en version standard et avec utilisation de Lambda) entre Java 8 (update 51 pour ne pas risquer de backport des optimisations en question sur…

Read More Read More

Authentification Kerberos avec SpringSecurity

Authentification Kerberos avec SpringSecurity

Introduction J’ai récemment implémenté une authentification (automatique) avec Kerberos. Ce protocole permet d’authentifier automatiquement un utilisateur depuis sa session utilisateur (session windows par exemple). Via Kerberos, on authentifie donc un utilisateur sans lui demander son mot de passe ce qui est un plus (il n’a pas à se re-logguer : on utilise le contexte d’authentification de Windows) en se basant sur le fait que s’il a ouvert une session utilisateur en son nom … alors tout est OK! En implémentant…

Read More Read More

Optimisez vos OPTIONS avec Access-Control-Max-Age

Optimisez vos OPTIONS avec Access-Control-Max-Age

Bonjour, Aujourd’hui, je partage avec vous un header HTTP que je viens de découvrir : Access-Control-Max-Age. Aujourd’hui, on execute des requêtes Ajax (ou XHR) sans arrêt, et souvent d’un site vers un autre. Pour des raisons de sécurité, pour qu’une page puisse réaliser une requête Ajax vers un autre site, il faut que celui-ci lui donne le droits, c’est ce qu’on appel CORS (Cross-Origine-Resource-Sharing) : la possibilité de partager des resources web entre deux origine différente depuis un navigateur. Ce…

Read More Read More