Livre / Ressource sur la configuration de l'équilibrage de la charge et du basculement pour l'application Web Java basée sur Servlet [fermé]

StackOverflow https://stackoverflow.com/questions/276623

Question

Nous créons un système Web utilisant la technologie Java et Servlet (en réalité Wicket pour la couche de présentation) et nous avons besoin que notre système soit disponible presque toujours, car nos clients en seront très dépendants.

Cela nous a amenés à chercher un bon livre sur le sujet ou une autre ressource qui explique comment mettre en place une architecture plus redondante et sans faille pour notre système.

Une liste non exclusive de questions que nous avons pour le moment:

  • Comment disposez-vous d'un nom de domaine (tel que http://www.google.com ), qui sont: effectivement desservi par plusieurs serveurs avec répartition de charge pour répartir les utilisateurs? N'y a-t-il pas toujours un point qui est plus faible dans une telle solution (les deux [car il ne peut pas y avoir plus] de serveurs DNS pour google.com dans leur cas)?
  • Il semble judicieux de disposer de plusieurs serveurs de base de données pour la redondance et l’équilibrage de la charge. Comment est-ce mis en place?
  • Si l'un de nos serveurs Web tombe en panne, nous souhaitons procéder à un basculement et permettre aux utilisateurs d'en utiliser un qui est toujours opérationnel. Entre autres choses, les sessions doivent être synchronisées d'une manière ou d'une autre. Comment est-ce mis en place?
  • Avons-nous également besoin d'une sorte de transaction synchronisée?
  • Amazon Computer Cloud est-il une bonne option pour nous? Comment pouvons-nous le mettre en place là-bas? Existe-t-il des alternatives rentables?
  • Devons-nous exécuter un conteneur Java EE tel que JBoss ou Glassfish?
Était-ce utile?

La solution

En ce qui concerne GlassFish, l'administration centralisée via l'interface graphique d'administration est une aide précieuse pour les environnements avec plus d'une instance de serveur d'applications à gérer. " Toujours disponible " est surchargé. Il peut s'agir de la disponibilité du service sans rétention de session en cas d'échec ou de la disponibilité des données avec des informations de session sauvegardées. Bien entendu, GlassFish peut faire les deux. Quelques ressources pouvant vous aider concernant GlassFish et la haute disponibilité:

Guide de la haute disponibilité de GlassFish: http://www.sun.com/offers/details/glassfish_HAref_config.html

Configuration d’un cluster GlassFish en 10 minutes: http://blogs.oracle.com/jclingan/entry/glassfish_clustering_in_under_under_10

John Clingan, chef de produit du groupe GlassFish

Autres conseils

Le wiki Liferay a un guide de haute disponibilité , décrivant une architecture pouvant servir de point de départ.

Il s'agit probablement d'une approche simpliste, mais j'ai récemment mis en place un type similaire de solution d'équilibrage de charge et de haute disponibilité.
Mon application avait Tomcat comme conteneur Web et base de données MySQL. J'ai présenté le serveur Apache Http à Tomcat et utilisé le module Apache mod_jk2 comme interface permettant de gérer l'équilibrage de la charge et le basculement.

De nombreuses ressources sont disponibles sur le Web à partir de la documentation Apache. En voici quelques unes:

http://tomcat.apache.org/connectors-doc/reference /workers.html

http: //www.redhat .com / docs / manuals / rhaps / jonas-guide / s1-load-balancing.html

http://tomcat.apache.org/connectors-doc/webserver_howto /apache.html

Pour MySQL, consultez le proxy MySQL pour l’équilibrage de la charge et le basculement. C'est une bonne idée d'avoir plus d'un serveur de base de données pour l'équilibrage de la charge et le basculement. un ensemble de bases de données peut être pour les lectures et l'autre pour les écritures. En fonction du volume, vous souhaiterez peut-être allouer plus / moins de serveurs en lecture / écriture. La documentation de votre base de données peut également vous aider dans la configuration.

HTH.

Un de mes amis a déclaré que La création de sites Web évolutifs est la solution définitive. livre sur le sujet:

Architectures Internet évolutives de Theo Schlossnagle pourraient également présenter un intérêt.

Je viens de terminer la lecture de Architecture de solutions d'entreprise: modèles pour les systèmes Internet à haute capacité . Excellente introduction pour moi sur l'évolutivité, la disponibilité, les performances, la sécurité et bien d'autres aspects des systèmes d'entreprise

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