Pregunta

Voy a crear mi propio servidor web que se centra en la escalabilidad, la prototipos rápidos y el uso de JavaScript como el lenguaje de secuencias de comandos del servidor, al igual que node.js. Usará un Vista de visión modelo Patrón de diseño para que una aplicación web pueda admitir más usuarios concurrentes simplemente agregando hardware, y no tener que rediseñar el software. Básicamente, su objetivo es producir un marco que permita el desarrollo rápido y fácil de aplicaciones en la nube sin la necesidad de escribir mucho código de placa de caldera. Tengo algunas preguntas sobre esto ...

  1. ¿Qué tan difícil será poner MySQL en la nube? ¿Cómo podría implementar esto y hacer que el producto resultante sea gratuito? ¿Tendré que escribir mi propio motor o modificar uno existente, si hago qué debo tener cuidado?
  2. Para hacer esto escalable, necesito ajustarme de un servidor a cientos de servidores, esto crea el requisito de que los servidores se equilibren la carga, ¿cómo debo hacer esto? Si equilibro en función de la carga de trabajo por servidor, necesitaría Gateway para manejar todas las solicitudes entrantes. ¿Es la idea correcta que todos los servidores se revisen en la puerta de enlace y actualicen su estado?
  3. Al hacer que los servidores pasen por una puerta de enlace si la puerta de enlace muere todas las solicitudes entrantes se ignoran. Estoy pensando que hacer que todos los servidores se mantengan una lista entre sí, o al menos algunos podría reconstruir la lista de servidores y establecer una nueva puerta de enlace. ¿Vale la pena? ¿O debería tener una puerta de enlace de respaldo que pueda cambiar? ¿Debo dejar que el usuario elija?
  4. ¿Cómo debo elegir qué servidor maneja la base de datos y qué maneja el servicio de la página? ¿Debo difundir la base de datos para que las consultas se realicen en múltiples servidores? Lo que teóricamente mejoraría el rendimiento.
  5. Los servidores necesitarían reflejar la base de datos al menos una vez para que si un servidor cae en la base de datos no está dañado. Entonces, esto plantea escribir otra pregunta, ¿debería transmitir consultas SQL para que todos los servidores puedan tomar un poco de carga de trabajo? Si lo hago de esa manera, ¿no una consulta obstruiría la red para que otras consultas no se puedan preformar? ¿Cuáles son mis alternativas?
  6. Finalmente, ¿hay una solución gratuita ya por ahí que podría necesitar un poco de modificación que se adapte a mis necesidades?

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
scroll top