Caches Infinispan sur Talend ESB

Il n’existe que peu de références pour mettre en place un cache Infinispan avec un ESB camel comme Talend ESB ou RedHat Fuse.

Après quelques travaux sur cette mise en oeuvre, je vous propose mon mode d’emploi. Ceci vous permettra de répartir des caches de données entre ces runtimes ESB.

Architecture de caches dans Talend ESB

Ce partage de collections peut être utilisé pour répondre à plusieurs besoins:

  1. Manipuler efficacement de grandes collections en mémoire en les chargeant que partiellement,
  2. Partager en temps-réel des données entre plusieurs processus,
  3. Distribuer des ressources mémoires en fonction de consommateurs multiples,
  4. Offrir une solution de Haute Disponibilité à moindre coût,
  5. Permettre des accès multiples à des ressources communes sans dé-duplication.

C’est ce dernier besoin qui m’a intéressé avec le besoin de permettre des consommateurs multiples de fichiers sFTP sans duplication.

Lire la suite

De QuarkusIO à Kubernetes en 10 secondes

Le framework Quarkus regroupe, uniformise et simplifie le développement Java. A mes yeux, il représente l’avenir de la plateforme Java.

Cet article démontre comment Quarkus simplifie la gestion des applications dites de « nouvelles générations » en mettant à profit Docker, un packaging universel et standard, et Kubernetes, l’orchestrateur de ces applications.

Je vous montrerai comment, en quelques commandes, une application Java Quarkus peut être mise à disposition dans un cluster Kubernetes. Pour cet exemple, je construirai une des applications quickstart de Quarkus pour la déploier vers mon cluster local microk8s sous Ubuntu.

Mon Objectif est de 10 secondes pour passer du code Java à l’exécutable géré par Kubernetes !

Lire la suite

Traitement JMS par lots avec Talend ESB

La gestion des messages dans des files JMS est caractérisée par un élément important, 1 contenu pour 1 message dans 1 file. Cela permet aux consommateurs de choisir avec finesse les contenus manipulés. Cela offre aussi des solutions de routage, de transformation, et de rejeux simples pour chaque message. Ceci de façon maîtrisée et transactionnelle. En résumé, dans les architectures orientées messages, l’adhérence faible entre consommateur et producteur de contenu est un point fort indéniable.

L’inconvénient est que les traitements unitaires sont coûteux en ressources. Lors de fortes quantités de messages, il est toutefois préférable de lotir ces traitements. Cette technique est d’ailleurs empruntée aux ETL.

Une de mes dernières réalisations a été de réaliser, sur la plateforme Talend ESB, des envois par lots à elasticsearch. Les clients JMS classiques étaient bien trop lents et très consommateurs de CPU. Plusieurs serveurs étaient nécessaires à ces envois. Ce client JMS par lots a définitivement supprimé cette forte contention et réduit nos charges CPU.

Lire la suite

Machine Learning with DeepRacer

In my previous article, we talked about DeepRacer and how we could all get into creating our own model. Here we will dive much deeper into how is DeepRacer learning from his actions, but also the different types of Machine Learning Algorithm available today.

Machine Learning

Machine Learning (ML) is a broad term to talk about self-learning algorithms. It is used in multiple domains: engineering, retails, finance, commerce and more.

There are 3 families of learning. Supervised Learning is used to predict or classify labeled data. Unsupervised Learning is mainly used for clustering unlabelled data ( finding correlations ). And Reinforcement learning is used when an agent takes actions within an environment. For example an autonomous car within the city or a rescue-drone…

We are going to explain mostly what Reinforcement Learning (RL) is, but we first need to explain what are Supervised (SL) and Unsupervised Learning (UL) to understand best RL.

Lire la suite

Paramétrage de Talend SAP RFC

Le module SAP RFC de Talend est un broker intermédiaire entre SAP vers Talend ESB ou Talend ETL. Il récupère les messages IDoc produits par SAP S/4HANA, puis les dispose dans une instance ActiveMQ. Dans sa version actuelle, v7.2, il ne permet donc que les flux sortants de SAP.

Ce module est peu connu et assez mal documenté. Après quelques sueurs froides et de longues heures à chercher à le stabiliser et le optimiser, je vous partage mes réglages au sein d’un paramétrage robuste.

Lire la suite

An introduction to AWS DeepRacer

Here is a quick and easy to read article about DeepRacer from Amazon WebServices, a car learning to race with Reinforcement Learning. This article will be followed by one article diving deeper into Reinforcement Learning, and a second concluding on the training our DeepRacer did and the results to the AWS DeepRacer real-life track.

Résultat de recherche d'images pour "deeparcer car"

AWS DeepRacer is a 1/18th scale autonomous racing car. Launched at AWS re:Invent 2018, it is a new opening toward Machine Learning and especially Reinforcement Learning. It is driven by multiple AWS software such as Amazon SageMaker, Amazon RoboMaker for the main section.

The car is composed of two main parts: the chassis/servos and the computer. Here we are going to center our attention to creating our first model.

Let’s start !

 

Lire la suite

L’interconnexion pour les nuls

Les Systèmes d’Informations évoluent constamment. De gré ou de force, pour être honnête. Les demandes métier prennent la forme de besoins ou de solutions. Avec l’avènement du SaaS, il est courant de se retrouver face à un choix d’un service qui a été fait uniquement par le métier. Les travaux de l’IT sont alors réduits, volontairement ou non, à « interconnecter » les applications actuelles à cette nouvelle.

Alors messieurs/dames du Business et de la MOA, lisez ces quelques lignes SVP !

J’utiliserai un exemple imagé afin de vous expliquer ces problématiques. Imaginez donc que vous aillez acheter en magasin un nouvel appareil. Vous le ramenez alors chez vous…

Lire la suite

Exemple d’ API avec WSO2 ESB

Je profite d’une expérience récente pour vous montrer, dans un cas pratique, les qualités de la solution ESB de WSO2. Pour le situer dans les produits de WSO2, ce bus est le coeur de l’ Enterprise Integration (Intermédiations de Systèmes) et de l’ API Management (Plateforme de partage d’API). En quelques mots, ce bus est spécialisé dans les intermédiations de services HTTP.

L’exemple que je vous propose est assez simple et est pour moi représentatif. Vous allez, je n’en doute pas, constater la lisibilité et la clarté des médiations réalisées avec cet ESB.

Le sujet que je vous propose est une API « utilisateur ». Elle présente des profils d’ utilisateurs. Elle puise ses données dans un annuaire Active Directory de Microsoft. Je ne m’attarde ici qu’à la médiation en tant que telle. Les outils WSO2 EI ou API Management portent d’autres fonctionnalités que je détaille pas dans cet article.

La conception de la route tient en 4 étapes:

  1. initialisation de la connexion LDAP,
  2. préparation de la requête,
  3. construction de la réponse.
  4. optionnel: la gestion d’erreurs.

Je vais dans la suite de cet article commenter cette API par étape, par bloc de code. Cela permettra de bien commenter chaque partie.

Lire la suite

Une belle réussite avec SOA Suite

Je suis souvent sollicité pour débloquer des problèmes sur les plateformes d’inter-médiations. Il s’agit trop souvent de serveurs mal configurés, des médiations qui utilisent la zone mémoire comme une ressource illimitée, des routes tellement tordues qu’elles finissent par tordre le développeur lui-même. Le pire est lorsque les développeurs n’ont pas compris la philosophie de l’outils. Ils ne s’adapte pas à celui-ci et produisent un monstre (énorme, lourd, lent et tueur de développeurs :-O ).

Alors, lorsque que je constate une petite pépite, je ne peux la cacher.

Lire la suite

API Days Paris 2018

Les 30 et 31 janvier, j’ai eu le plaisir de me plonger 2 jours dans les API au cœur de Paris, à la cité internationale universitaire. Il s’agissait du séminaire APIDays. Je venais y chercher des retours d’expérience, des approches pertinentes et des méthodes efficaces.

Avant de vous faire une synthèse de ces journées, je tiens à féliciter Mehdi Medjaoui pour la qualité de son organisation. C’était réussi. Bravo !

Aux APIDays,  je me suis focalisé sur les tracks Digital transformation et GDPR & Data Governance.

Lire la suite