Mi primera pregunta es, a menudo leo sobre personas que usan múltiples servidores dedicados para ejecutar sus sitios web, y procesar las consultas de los usuarios. ¿Pero cómo exactamente hacen esto? Quiero decir, cuando ingreso un nombre de dominio, un DNS resuelve el mapeo de eso en una dirección IP, pero estoy perdido después de eso ... ¿hay algún tipo de arquitectura maestro/esclavo allí para equilibrar la carga de solicitudes entre los (potencialmente) cientos de servidores?¿Cómo funcionan varios servidores en sincronización para la aplicación web?
Si ese es el caso, ¿cómo comparten los diferentes servidores, compartir datos (base de datos, por ejemplo)? ¿Se conectarán al mismo disco duro?
Respuesta
ultramonkey le dará una buena descripción de cómo equilibrar la carga a través de muchos servidores, por lo que se ve 1 dirección IP, pero la conexión va a parar a uno de los muchos servidores (con tolerancia a fallos incluido).
Si usted no tiene sus servidores web utilizando el mismo almacenamiento (almacenamiento común puede ser complicado, hay que utilizar un SAN con un sistema de archivos 'compartida' como GFS, o una base de datos), debe activarlo sticky sessions que cuentan el enrutador con el que cada cliente elegirá un servidor para comunicarse por primera vez, y se mantendrá con ese servidor. Esto es menos tolerante a fallas (pero en la web solo tendrá que actualizar una conexión interrumpida para comenzar de nuevo) pero mucho más fácil de diseñar (y más rápido ya que cada servidor web puede permanecer independiente)
El otro problema es que ' La necesidad de una situación verdaderamente tolerante a los fallos es ubicar los servidores físicos lejos el uno del otro, lo que plantea problemas de rendimiento para la mayoría de los diseños compartidos (es decir, no se pueden poner todos los servidores en una SAN si están en diferentes países). utilizar el enfoque de servidores múltiples, usar un único nombre DNS y replicar los datos entre ellos regularmente. DNS load balancing es posiblemente la forma más fácil de usar múltiples servidores web como un único sitio web. En estos casos, la base de datos suele ser una única base de datos con la que todos los servidores se comunican o se pueden compartir usando clustering o más a menudo log-shipping para asegurarse de tener una copia de seguridad lista para conectarse en caso de falla primaria. . El envío de registros es más común para servidores de respaldo que están ubicados lejos.
1) Se puede utilizar NLB (Network Load Balancing) - se utilizará el mismo IP de todos los servidores de la granja http://en.wikipedia.org/wiki/Network_Load_Balancing_Services http://technet.microsoft.com/en-us/library/cc759510.aspx
2) agrupación de SQL para el un archivo común DB y almacenar los datos no-relación http://www.sql-server-performance.com/articles/clustering/clustering_intro_p1.aspx
- 1. Java: sincronización de subprocesos en varios servidores
- 2. ¿Cómo funcionan los servidores web?
- 3. Sincronización de índices de Lucene.net en varios servidores de aplicaciones
- 4. Thin server underperforming/¿Cómo funcionan los servidores web con evented?
- 5. Escalar cronjobs en varios servidores
- 6. ¿Es posible compartir HttpRuntime.Cache entre varios servidores web?
- 7. Escribir código de varios servidores
- 8. Comunicación entre varios servidores
- 9. Implementación de una aplicación Web.py con WSGI, varios servidores
- 10. Implementación de varios servidores
- 11. TFS 2010: implementar en varios servidores después de la compilación
- 12. ¿Cómo despliega un sitio web en sus servidores web?
- 13. ¿Cómo autenticarse con los servidores XMPP de sincronización de Chrome?
- 14. TFS2010 Definición de compilación para implementar en varios servidores?
- 15. ¿Distribuye hilos Java en varios servidores?
- 16. Certificado de SSL único en varios servidores
- 17. Maven Implementar en varios servidores Tomcat
- 18. Sincronización en la nube entre la aplicación para iPad/iPhone
- 19. django-apio en el entorno de producción de varios servidores
- 20. Servidores separados para servir la aplicación django y su contenido?
- 21. Web Implementar en varios servidores a la vez desde Visual Studio 2010
- 22. Mantener los archivos cargados sincronizados en varios servidores - PHP Linux
- 23. Supervisión/manejo de errores en servidores web
- 24. Cuál es mejor pulpo o msdeploy para la implementación automática en varios servidores usando teamcity
- 25. ¿Cómo evitan los servidores web TIME_WAIT?
- 26. does La variable de estado de la aplicación funciona bien en los servidores de la granja web
- 27. aplicación Java Servidores alternativas
- 28. Escalar un servidor postgres a varios servidores
- 29. Sincronización en subprocesos para Java
- 30. granja de servidores web de signalR