IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Flex Discussion :

Utiliser les RSL ? ou pas !


Sujet :

Flex

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    793
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2009
    Messages : 793
    Par défaut Utiliser les RSL ? ou pas !
    Je viens de faire une constatation plutôt curieuse au sujet de l'utilisation de la RSL du Framework.
    Cette option de compilation permet de déployer les classes du framework dans un fichier séparé et pouvant être partagé par plusieurs applications. L'avantage est de le télécharger une seule fois sur le poste client.
    Du moins c'est ce que l'on comprend lors d'une lecture rapide.
    En pratique seule la RSL signée (framework_xxx.swz) permet cet avantage. Lors de sa première utilisation elle est copiée dans le cache local du Player Flash. Elle est ensuite utilisée par toutes les applications Flex utilisant la même version du framework.
    Le problème survient lorsque seule la version non signée (.swf) est déployée.
    En effet dans ce cas, non seulement le fichier n'est pas placé dans le cache mais en plus il est téléchargé pour CHAQUE module de l'application !!!

    Les extraits de log du serveur ci-dessous illustrent ces constatations :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    Cas n°1 : RSL signée (première utilisation --> RSL téléchargée)
    DEBUG | 01-04-2010 21:34:24:269 | 0013:core.protocol.HTTPMessage.execute(245)| /AXX.swf (272579)
    DEBUG | 01-04-2010 21:34:24:347 | 0014:core.protocol.HTTPMessage.execute(245)| /framework_3.5.0.12683.swz (569996)
    DEBUG | 01-04-2010 21:34:24:769 | 0015:core.protocol.HTTPMessage.execute(245)| /PXSMHome.swf (42364)
    DEBUG | 01-04-2010 21:35:27:879 | 0013:core.protocol.HTTPMessage.execute(245)| /PXUMConfig.swf (84101)
    DEBUG | 01-04-2010 21:35:32:082 | 0013:core.protocol.HTTPMessage.execute(245)| /PXUMIdaxx.swf (76573)
    (utilisation ultérieure --> la RSL n'est pas re-téléchargée)
    DEBUG | 01-04-2010 23:10:55:394 | 0013:core.protocol.HTTPMessage.execute(245)| /AXX.swf (272579)
    DEBUG | 01-04-2010 23:10:56:379 | 0013:core.protocol.HTTPMessage.execute(245)| /PXSMHome.swf (42364)
    DEBUG | 01-04-2010 23:11:03:863 | 0014:core.protocol.HTTPMessage.execute(245)| /PXUMConfig.swf (84101)
     
    Cas n°2 : RSL non signée (téléchargée avec chaque module !!!)
    DEBUG | 01-04-2010 21:05:19:754 | 0012:core.protocol.HTTPMessage.execute(245)| /AXX.swf (272662)
    DEBUG | 01-04-2010 21:05:20:160 | 0013:core.protocol.HTTPMessage.execute(245)| /framework_3.6.0.13443.swf (568563)
    DEBUG | 01-04-2010 21:05:21:379 | 0014:core.protocol.HTTPMessage.execute(245)| /PXSMHome.swf (42562)
    DEBUG | 01-04-2010 21:05:21:457 | 0013:core.protocol.HTTPMessage.execute(245)| /framework_3.6.0.13443.swf (568563)
    DEBUG | 01-04-2010 21:05:36:004 | 0014:core.protocol.HTTPMessage.execute(245)| /PXUMConfig.swf (84307)
    DEBUG | 01-04-2010 21:05:36:066 | 0015:core.protocol.HTTPMessage.execute(245)| /framework_3.6.0.13443.swf (568563)
    DEBUG | 01-04-2010 21:05:40:519 | 0012:core.protocol.HTTPMessage.execute(245)| /PXUMIdaxx.swf (76811)
    DEBUG | 01-04-2010 21:05:40:613 | 0016:core.protocol.HTTPMessage.execute(245)| /framework_3.6.0.13443.swf (568563)
     
    Cas n°3 : pas de RSL, framework inclus dans l'application
    DEBUG | 01-04-2010 23:27:36:800 | 0014:core.protocol.HTTPMessage.execute(245)| /AXX.swf (505900)
    DEBUG | 01-04-2010 23:27:37:254 | 0015:core.protocol.HTTPMessage.execute(245)| /PXSMHome.swf (40836)
    DEBUG | 01-04-2010 23:27:43:019 | 0012:core.protocol.HTTPMessage.execute(245)| /PXUMConfig.swf (145460)
    DEBUG | 01-04-2010 23:27:46:925 | 0012:core.protocol.HTTPMessage.execute(245)| /PXUMIdaxx.swf (152239)
    Attention donc à bien déployer la version signée. Dans le cas contraire il est préférable d'inclure le framework dans l'application...

    A noter que j'utilise mon propre serveur HTTP, donc si quelqu'un pouvait confirmer ou infirmer avec un autre serveur ce serait intéressant. Il y a peut-être des paramètres dans le header de la réponse HTTP que je devrais ajouter.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    793
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2009
    Messages : 793
    Par défaut
    J'ai posté sur le forum d'Adobe ces constatations, je vous communique la réponse :

    En fait pour le cas n°2 (RSL non signée) il existe un bug dans Flex Builder qui fait que chaque module est lié à la librairie du framework. C'est pour cette raison qu'elle est rechargée avec chaque module.
    Il semble que le seul moyen de contourner ce problème soit d'utiliser le compilateur en ligne de commande.

    Sinon le bug est corrigé dans Flash Builder 4 !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 16/10/2008, 19h14
  2. Réponses: 8
    Dernier message: 27/09/2007, 08h58
  3. Réponses: 6
    Dernier message: 31/05/2007, 22h36
  4. [9i]Ne pas utiliser les rollback segments
    Par loudo dans le forum Oracle
    Réponses: 3
    Dernier message: 15/06/2006, 14h17
  5. [débutant] Ne pas utiliser les frames ?
    Par Pigoulou dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 13/02/2006, 10h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo