Vous consultez une page technique concernant le logiciel de gestion Mercator. Celle-ci contient des informations spécifiques destinées aux professionnels de Mercator. Souhaitez-vous être redirigés vers des informations plus générales ?


   Ne plus poser cette question

Comment optimiser la gestion des images de taille importante dans les signalétiques de Mercator en mode SQL cloud ?

0000002671     -      09/12/2016

Il est habituel de stocker les images associées à des articles (ou d'autres signalétiques) directement dans la base de données SQL. Techniquement, ce stockage se fait dans des colonnes VARBINARY(MAX).

La difficulté rencontrée ici est que la taille éventuellement importante de ces images/photos peut ralentir de façon considérable la consultation des fiches de signalétiques, puisque Mercator lit l'enregistrement correspondant dans son ensemble, images comprises.

Mercator 8.6 permet de mettre en place une optimisation pour répondre à ceci et ainsi améliorer drastiquement ses performances. Cela se fait via l'option "Signalétiques / Taille max. optimisation images binaires" (MAX_BIN_SZ).

Cette option permet de déterminer la taille maximale (en bytes) des images binaires à télécharger de façon directe lors de l'ouverture d'une fiche de signalétique. Les images dont la taille dépasse cette limite seront téléchargées, lors de l'affichage effectif, de façon asynchrone.
    
Pour désactiver cette optimisation, il faut mettre la valeur zéro. (valeur par défaut)

Les avantages de cette optimisation sont les suivants :

  • Les images ne sont téléchargées que si cela est réellement nécessaire. Les images dans un onglet non activé par l'utilisateur ne seront donc pas téléchargées.
  • Les images sont téléchargées en tâche de fond (dans un thread secondaire). Cela permet à l'utilisateur de pouvoir continuer à travailler pendant le téléchargement.
  • Lors de la sauvegarde, les images non téléchargées sont exclues de la sauvegarde de l'enregistrement en cours de modification et ne doivent donc pas être ré-uploadées vers le serveur SQL.