Question

Quels modèles de conception ou techniques avez-vous utilisés qui sont spécifiquement adaptés à la évolutivité ?

Des motifs tels que le motif Flyweight me paraissent être une version spécialisée du Modèle d'usine >, pour favoriser une grande évolutivité ou lorsque vous travaillez dans des contraintes de mémoire ou de stockage.

Qu'avez-vous déjà utilisé? ( Dénormalisation des bases de données , etc. .) Trouvez-vous que les règles changent lorsque la haute disponibilité ou l'évolutivité est votre objectif principal?

Les situations possibles sont les suivantes:

  • Appareils mobiles dotés d'une mémoire, d'une puissance de traitement et d'une connectivité plus limitées qu'un ordinateur de bureau ou un ordinateur portable
  • Nombre élevé d'utilisateurs utilisant du matériel limité (stratégies de mise en cache, etc.)
  • Optimisation du schéma de base de données pour plus d’efficacité au lieu d’une conception normalisée (par exemple, habillage des colonnes SharePoint pour le stockage)
Était-ce utile?

La solution

Quelques motifs qui viennent à l’esprit:

  • Application sans état
  • Couplage lâche
  • Asynchronisme
  • Chargement paresseux
  • Mise en cache
  • parallélisme
  • Partitionnement
  • Routage

Quelques ressources:

Autres conseils

Rendre l'application aussi apatride que possible. Sera plus facile à adapter à une batterie de serveurs.

Les manuels POSA (architecture logicielle orientée modèles) sont une excellente source pour de tels modèles.

POSA 4 , en particulier, concerne l'informatique distribuée, mais tous les volumes sont pleins de modèles d’évolutivité.

Ce que j’ai observé avec la logique d’application Stateless, c’est qu’elle introduit de nombreuses autres exigences, comme le verrouillage sur une base de données, qui finit par aller à l’encontre de l’évolutivité.

Disons que la logique d'application déployée est sans état sur une batterie de serveurs, puis pour une demande qui frappe deux nœuds d'un cluster en même temps, nous devons introduire des concepts tels que le verrouillage de base de données afin de nous assurer qu'une seule demande sera traitée.

Je suis confronté à de telles situations maintenant et je me demandais comment tout le monde réagissait face à un tel comportement apatride.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top