Mise en cache distribuée sur la voie de l'évolutivité

Par Iqbal Khan

Si vous développez une application ASP.NET, des services Web ou une application de calcul haute performance (HPC), vous risquez de rencontrer des problèmes d'évolutivité majeurs lorsque vous essayez de mettre à l'échelle et de charger davantage votre application. Avec une application ASP.NET, des goulots d'étranglement se produisent dans deux magasins de données. La première correspond aux données d'application qui résident dans la base de données et la seconde aux données d'état de session ASP.NET qui sont généralement stockées dans l'un des trois modes (InProc, StateServer ou SqlServer) fournis par Microsoft. Tous les trois ont des problèmes d'évolutivité majeurs.

Les services Web n'utilisent généralement pas l'état de session, mais ils présentent des goulots d'étranglement d'évolutivité en ce qui concerne les données d'application. Tout comme les applications ASP.NET, les services Web peuvent être hébergés dans IIS et déployés dans une batterie de serveurs Web pour l'évolutivité.

Les applications HPC conçues pour effectuer un traitement parallèle massif rencontrent également des problèmes d'évolutivité car le magasin de données n'évolue pas de la même manière. Le HPC (également appelé grille informatique) utilise traditionnellement Java, mais à mesure que .NET gagne des parts de marché, il devient également de plus en plus populaire pour les applications HPC. Les applications HPC sont déployées sur des centaines, voire des milliers d'ordinateurs pour un traitement parallèle, et elles doivent souvent fonctionner sur de grandes quantités de données et partager des résultats intermédiaires avec d'autres ordinateurs. Les applications HPC utilisent une base de données ou un système de fichiers partagé comme magasin de données, et ces deux éléments ne sont pas très bien évolutifs.

Lire l'article complet

Mise en cache distribuée

La mise en cache est un concept bien connu dans le monde du matériel et du logiciel. Traditionnellement, la mise en cache était un mécanisme autonome, mais il n'est plus utilisable dans la plupart des environnements car les applications s'exécutent désormais sur plusieurs serveurs et dans plusieurs processus au sein de chaque serveur.

La mise en cache distribuée en mémoire est une forme de mise en cache qui permet au cache de s'étendre sur plusieurs serveurs afin d'augmenter sa taille et sa capacité transactionnelle. La mise en cache distribuée est désormais devenue réalisable pour un certain nombre de raisons. Premièrement, la mémoire est devenue très bon marché et vous pouvez charger des ordinateurs avec plusieurs gigaoctets à des prix jetables. Deuxièmement, les cartes réseau sont devenues très rapides, avec le 1 Gbit désormais standard partout et le 10 Gbit qui gagne du terrain. Enfin, contrairement à un serveur de base de données, qui nécessite généralement une machine haut de gamme, la mise en cache distribuée fonctionne bien sur des machines moins coûteuses (comme celles utilisées pour les serveurs Web), ce qui permet d'ajouter facilement davantage de machines.

Lire l'article complet
© Copyright Alachisoft 2002 - . Tous droits réservés. NCache est une marque déposée de Diyatech Corp.