• › Connexion
  • Blog RIA.do.be
  • Blog Web2Entreprise
Section separator

Catégories

  • Annonces
  • Évènements
  • Concepts et Usages
  • Général
  • Notes Techniques
  • Références
Adobe EMEA Silver Solution Partner Section separator

Abonnement

  • RSS Articles Articles (RSS)
  • RSS Articles Commentaires (RSS)
  • RSS mail Articles (Email)
  • Populaires
  • Récents
  • Commentaires
  • Premiers Retours sur l’Adobe MAX 2009 (vu 13 001 fois)
  • Comment forcer les styles des composants Flex/AS3 d’une librairie SWC réutilisable (vu 5 753 fois)
  • Utiliser le framework Cairngorm pour Flex 2 (1/4) (vu 5 423 fois)
  • Architecture MVC: Cairngorm ou PureMVC ? (vu 3 248 fois)
  • Le problème du ModelLocator Cairngorm (vu 3 059 fois)
Articles récents
  • Ouverture des inscriptions pour le webinar ConfluenceFx
  • Développeur, Communicant, Designer ou Ergonome ? Changez pour Kap IT
  • Application AIR : Comment Sauvegarder/Charger un Document et lui Associer une Extension ?
  • Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9
  • Premiers Retours sur l’Adobe MAX 2009
Commentaires récents
  • Fadi Mansour dans Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9
  • nico dans Détection de l’Événement « Coller » avec Flex Builder 3 et Flash Player 9
  • Florian dans Application AIR : Comment Sauvegarder/Charger un Document et lui Associer une Extension ?
  • Fadi Mansour dans Comment intégrer une application Flex dans une application Flash ou AS3
  • yoann dans Comment intégrer une application Flex dans une application Flash ou AS3

Auteurs

  • Alexis Kartmann (12)
  • Benoit Kogut-Kubiak (2)
  • Christoher Bograt (1)
  • Cyril Daloz (7)
  • Daniel Pesic (5)
  • Fadi Mansour (3)
  • Florian Fesseler (1)
  • Guillaume Mignard (2)
  • Jean de Laulanié (2)
  • Julien Revel (19)
  • Mahmoud Ramadan (1)
  • Matthieu Jobert (1)
  • Stéphane Guyot (1)
  • Stéphane Koëth (2)
  • Yann Graufogel (2)
Section separator

Tags

BlazeDS skin MVC AMF AIR actionscript Flex kapinspect livecycle AS3 JVM RTMP Adobe MAX builder RIA compilation Kap IT Corporate PureMVC Kap Lab fds LCDS Framework Web 2.0 Cairngorm
Section separator

Archives

  • février 2010 (1)
  • décembre 2009 (2)
  • novembre 2009 (1)
  • octobre 2009 (3)
  • septembre 2009 (1)
  • août 2009 (1)
  • avril 2009 (2)
  • février 2009 (2)
  • janvier 2009 (4)
  • décembre 2008 (4)
  • novembre 2008 (2)
  • octobre 2008 (2)
  • septembre 2008 (2)
  • août 2008 (1)
  • juin 2008 (1)
  • avril 2008 (4)
  • mars 2008 (3)
  • février 2008 (2)
  • janvier 2008 (1)
  • décembre 2007 (3)
  • novembre 2007 (1)
  • septembre 2007 (1)
  • juillet 2007 (1)
  • juin 2007 (1)
  • mai 2007 (4)
  • avril 2007 (8)
  • mars 2007 (2)
  • février 2007 (1)

Marque-pages

  • Adobe Labs
  • AStrois Blog
  • Code moi un mouton
  • Coma Informatique
Section separator

Kap IT

  • Site Web
  • Blog Web2Entreprise
  • Blog RIA.do.be
  • Lab

Blog RIA.do.be

Veille, Recherche et Développement RIA Flex-AS3-LiveCycle

Intégrer les applications Flex RIA aux services de l’entreprise, que choisir : LiveCycle DataServices (LCDS) ou BlazeDS ?

Par Daniel PesicgravatarFermerAuteur : Daniel Pesic Email : dpesic@kapit.fr
Site : http://www.kapit.fr
A propos : Voir les autres billets de l'auteur (5)
, publié le 22 février 2008

Depuis l’annonce faite par Adobe en décembre de passer une partie de LiveCycle DataServices (anciennement Flex DataServices ou FDS) en open source et gratuit sous le nom de BlazeDS, de nombreux clients nous interrogent sur leur différence.

Facteur aggravant, en cherchant sur la toile, on trouve souvent le schéma ci-dessous à gauche. Même s’il n’est pas faux, il occulte un aspect clé de l’offre LCDS : la montée en charge et les performances du protocole RTMP sur toute la partie remoting. A droite, le même schéma, mention faite des deux protocoles utilisés.

Les protocoles

LCDS dispose de plusieurs techniques et protocoles pour délivrer ses services : RTMP, RTMPT (tunneling rtmp sur HTTP), AMF/HTTP (en polling simple ou long), text/HTTP. Lors du déploiement d’un service LCDS/BlazeDS, on paramètre une liste ordonnée par préférence. Le serveur peut se rabattre sur un protocole de second choix si le premier n’est pas opérationnel. BlazeDS partage ce mécanisme mais il est confiné au protocole HTTP.

Temps de réponse et montée en charge

Avec LCDS, le protocole RTMP peut être utilisé pour maintenir une connexion par socket en duplex. Si l’on fait abstraction du temps de transport sur le réseau, on peut risquer un “temps-réel”. La déconnexion d’un client est immédiatement connue du serveur, celui-ci peut donc optimiser, entre autres choses, l’allocation de ses ressources. C’est ce protocole qui est de préférence utilisé par le bloc ‘Data Management’, notamment pour la synchronisation des données entre clients (la mise en place d’un système de notification et de mises à jour automatisé entre tiers clients est loin d’être triviale).
Ce mécanisme permet d’atteindre plusieurs milliers de connexions simultanées car le serveur de socket RTMP est beaucoup moins gourmant que son compère du serveur web http : il a été implémenté en utilisant Java NIO, présent depuis le Jdk1.4, rompant avec les accès bloquants et le modèle 1 socket / 1 thread.

Conclusion

BlazeDS est parfait pour la multitude de projets d’intégration java que l’on peut avoir à réaliser sur de petites échelles de montée en charge. Si tôt que l’on souhaitera une meilleure résistance sur la volumétrie, des temps de réponses proches du temps-réel, des fonctionalités supplémentaires comme la mise à jour instantanée de postes clients ou encore la génération de PDF, il vaudra mieux se tourner vers LCDS / RTMP.

Pour finir, Christophe Conraets présentera le futur de LCDS/blazeDS durant l’évènement Flex 360 à Atlanta, les 26-27 février 2008.

LCDS / RTMP

BlazeDS

Protocole

HTTP & RTMP (Java NIO)

HTTP

Charge

2000-10000 connexions simultanées

200-500 connexions simultanées

Usage préférentiel - Remoting, httpService, WebService
- Messaging
- Data synchronization
- Génération de PDF
- Remoting, httpService, WebService
Avantages - bien meilleure montée en charge par serveur
- synchronisation de données client en temps réel
- Aucun mécanisme de notification à prévoir entre les clients
- déconnexions clientes immédiatement perçues par le serveur
- protocole ‘passe-partout’
- Gratuit et open-source
Inconvénients - nécéssité d’autoriser le protocole RTMP sur le réseau
- payant
- performances
- saturation des ressources serveur très rapide

Resources (en anglais) :

http://labs.adobe.com/technologies/blazeds/
http://www.adobe.com/fr/products/flex/dataservices/
http://www.dcooper.org/blog/… - détail des channels utilisés par blazeds et la prochaine version de LCDS
http://sujitreddyg.wordpress.com/…/blazeds-and-lcds-feature-difference/
http://en.wikipedia.org/wiki/Comet - Comet et les techniques de polling
http://cometdaily.com/ - site d’experts Comet

http://gee.cs.oswego.edu/dl/cpjslides/nio.pdf (Pdf)

http://jcp.org/en/jsr/detail?id=315 - JSR 315: Java TM Servlet 3.0 Specification
http://java.sun.com/developer/technicalArticles/releases/nio/

Articles relatifs

  • LiveCycle DataServices 2.6beta et autres nouveautés (0)
  • Digest estival de news Adobe (1)
  • BlazeDS / Adobe frappe encore très fort (0)
  • Utiliser le framework Cairngorm pour Flex 2(3/4) (1)
  • Utiliser le framework Cairngorm pour Flex 2 (4/4) : Remarques et Add-On (6)
Catégories: Notes Techniques
Tags: AMF, BlazeDS, Flex, LCDS, RIA, RTMP

Un commentaire sur “Intégrer les applications Flex RIA aux services de l’entreprise, que choisir : LiveCycle DataServices (LCDS) ou BlazeDS ?”

  1. Alexandre Emeriau dit :
    24 août 2008 à 4:43

    Salut Daniel,

    Merci pour ces informations claires et bien rédigées qui méritaient en effet le détour tout autant qu’un clin d’oeil à un ancien de Kahiloa :)

    En rapport avec ta conclusion, peut-être certains et certaines seraient intéressés par une autre ressource dans ce domaine connue sous le nom de weborb (http://www.themidnightcoders.com/weborb/), produit gratuit en lui-même et payant côté support. Les déclinaisons pour celui-ci existent pour Java, .Net, PHP et Ruby.

    Bref, dans l’éventualité où le produit n’aurait pas été écarté ou tout simplement considéré, je pense qu’il mérite lui aussi un clin d’oeil :)

    Alex

Laisser une réponse

Cliquer ici pour annuler la réponse.

Article précédent
Article suivant
 
Haut de page

Copyright © 2009 Kap IT - Blog RIA - Blog Web2Entreprise - Kap Lab

Motorisé par Wordpress - Thème avec YAML par Kap IT