Publié par

Il y a 9 années -

Temps de lecture 4 minutes

Revue de Presse Xebia

Revue de Presse Xebia

La revue de presse de l’actualité Java/J2EE hebdomadaire proposée par Xebia.

Le coin de la technique

SOA

Le coin de la technique

Simplifier vos DAO Appengine avec SimpleDS

SimpleDS est un framework donnant accès au datastore de Google App Engine et qui se situe entre le service bas-niveau fourni par Google et les API JPA/JDO, pas toujours adaptés aux cas particuliers du framework de Google qui manipule une base non-relationnelle.

Les habitués des annotations JPA ne seront pas perdus, la syntaxe est assez proche. Par exemple pour définir un Pojo à persister:

@Entity
public class Employeur {
// Seuls les identifiants Key sont acceptés
@Id(parent=Parent.class)
@GeneratedValue
private Key key;

// Par défaut le champ est persistant
private String nom;

@Transient
private int champTransient;

// On peut utiliser directement les types de App Engine
private Link lien;

// Relation directe vers une autre entité
@Embedded
private Projet projet;

}

Ensuite un EntityManager spéficique à SimpleDS va s’occuper de la transformation de cet objet en une entity App Engine à l’aide de la méthode javaToDatastore. Dans les cas simples, cette transformation n’est pas nécessaire:

Employeur employeur=new Employeur("Durand");
// Persister un objet
Key key=entityManager.put(employeur);
// Récupérer un objet
employeur=entityManager.get(key);

Tout en étant simple la plupart des fonctions qu’on attend d’un entity manager sont là, comme par exemple la pagination ou les transactions. Le projet est relativement jeune (première version en octobre 2009), le 4 mai dernier une version 1.0_RC1 est sortie avec de nouvelles fonctionnalités intéressantes:

  • gestion du cache : l’ajout du cache se fait tout simplement en ajoutant @Cacheable à la classe. Il existe un cache de premier niveau (dans le thread courant) et de second niveau (sérialisation de l’objet et stockage dans le datastore mais avec un timeout).
  • tâche de fond : Une requête App Engine interrompt toute requête dépassant les 30s. SimpleDS propose d’englober certaines requêtes dans des tâches. Par exemple si on veut mettre à jour un nombre important d’utilisateurs, on fournit la requête récupérant les utilisateurs puis la méthode faisant la mise à jour sur chaque utilisateur. La récupération se fera par lot (150 par défaut) pour rester en deçà des 30 secondes.
  • Functions (Google Collections) : SimpleDS propose d’utiliser Google Collections pour appliquer une fonction à des listes de résultats (Collections2.transform). On peut ainsi éviter dans certain cas le problème du n+1.

Pour les développeurs forcenés de JDO ou JPA, SimpleDS semblera sans doute trop limité. Mais l’approche pragmatique et centrée sur App Engine est plutôt bien pensée et pour les projets demandant une mise en production rapide, cette solution semble adéquate. Un projet à suivre !

Double sortie de Grails en version 1.3

Le fameux framework web basé sur Groovy est sorti en version 1.3. Parmi les nouveautés apportées par cette dernière mouture stable on peut noter :

  • l’intégration de Groovy 1.7
  • le support de JUnit 4
  • le support des repository Maven pour l’installation et la publication de plugins
  • la possibilité de chaîner des requêtes Criteria nommées

La version 1.3.0 sortie en début de semaine dernière, a été suivie de près (5 jours) par la 1.3.1 pour corriger plusieurs problèmes relevés par les early-adopters. Il est rassurant de voir la réactivité de la communauté et de l’équipe Grails. Pour plus de détails, voir les release notes :

Nous en profitons pour signaler que Developpez.com vient d’ouvrir un forum dédié à Grails. Ce dernier a aussi vu GORM, son moteur de persistance basé sur Hibernate, documenté par les polonais de javaexpress.pl qui lui dédient un long dossier.

SOA

Nouvelle console de management pour Mule ESB

Après s’être longtemps allié à Hyperic pour fournir sa solution de supervision et suite au rachat de ce dernier par SpringSource, MuleSoft s’est attelé au développement d’une nouvelle console de management et celle-ci vient enfin d’être dévoilée au grand jour. La solution se présente sous la forme d’une application Web déployable sur tout serveur d’application JEE et d’un agent mule à déposer dans les installations de mule qu’on voudrait superviser. Ainsi les différents agents se connecteront à l’application déployée pour lui fournir toutes les informations pertinentes, à destination des équipes d’exploitation (consommation mémoire, CPU, etc) et de celles de développements (liste des services déployés, les différents endpoints, les messages qui transitent, les alertes ..). Ci-après quelques illustrations de la console en action.

Supervision mémoire CPU :

ResourcesSupervision

Liste des services déployés :

ServicesList

Audit d’un service :
processAuditing1

Publié par

Publié par Xebia France

Xebia est un cabinet de conseil international spécialisé dans les technologies Big Data, Web, les architectures Java et la mobilité dans des environnements agiles. Depuis plus de 15 ans, nous avons la volonté de partager notre expertise et nos actualités à travers notre blog technique.

Commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Nous recrutons

Être un Xebian, c'est faire partie d'un groupe de passionnés ; C'est l'opportunité de travailler et de partager avec des pairs parmi les plus talentueux.