Pregunta

  1. Mi primera pregunta es, a menudo leer acerca de las personas que utilizan múltiples servidores dedicados a ejecutar sus sitios web y consultas de procesos de usuarios. Pero, ¿cómo es exactamente lo que esto? Es decir, cuando entro en un nombre de dominio, un DNS resuelve mapas que a 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 peticiones entrantes entre los cientos (potencialmente) de servidores?

  2. Si ese es el caso, ¿cómo los distintos servidores, compartir datos (base de datos para, por ejemplo)? Van a estar conectados en el mismo disco duro?

¿Fue útil?

Solución

ultramonkey le dará una buena descripción de cómo equilibrar la carga a través de muchos servidores, por lo usted está viendo 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) entonces debería permitir sesiones pegajosa que cuentan la router que cada cliente elegirá un servidor para comunicarse con el primer tiempo, y mantener con ese servidor. Esto es menos tolerante a fallos (pero en la web usted sólo tiene que actualizar una conexión rota que empezar de nuevo) pero mucho más fácil de arquitecto (y más rápido, ya que cada servidor web puede permanecer independiente)

La otra cuestión que había necesidad en una situación verdaderamente tolerante a fallos es localizar los servidores físicos muy lejos el uno del otro, lo que plantea problemas de rendimiento para la mayoría de los diseños de intercambio (es decir, no se puede poner todos los servidores en una SAN si Estás en diferentes países), es utilizar el enfoque de múltiples servidores, usando un único nombre DNS y replicar datos entre ellos regularmente. equilibrio de carga de DNS es posiblemente la forma más fácil de utilizar múltiples servidores web como un único sitio web.

En estos casos, la base de datos a menudo puede ser una única base de datos que todos los servidores se comunican, o puede ser compartida a sí mismos, mediante la agrupación o más a menudo trasvase de registros para asegurarse de tener una copia de seguridad listo para entrar en funcionamiento si falla el primario. Trasvase de registros es más común que los servidores de copia de seguridad que se encuentran lejos.

Otros consejos

1) 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 la base de datos y un almacén de archivos de datos común para la no-relación http://www.sql-server-performance.com/articles/ clustering / clustering_intro_p1.aspx

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top