Aquí hay algunas cosas que debería tener en cuenta:
- ¿Qué tipo de patrones de tráfico esperas, especialmente en lo que respecta a lecturas vs escrituras? ¿Puedes separarlos? Es mucho más fácil escalar varias instancias de db que saben que solo necesitan entregar lecturas.
- ¿Cómo son sus datos? ¿Tiene experiencia con un solo tipo de base de datos relacional o podría usar postgres o mysql sin problemas para cambiar? ¿Hay piezas que deberían usar algo como Redis?
- Si va a tener un tráfico real que llegue a estas API, es probable que esté almacenando datos en caché. Piense en esa realidad ahora y en lo que eso significará para todos sus consumidores. No optimices prematuramente, pero no esperes hasta que tengas meses y no puedas encontrar la forma de frenar el tren fuera de control.
- Mantenlo tan simple como puedas, porque se volverá más complicado de lo que esperas.
- Dentro de lo razonable, es más fácil comenzar las cosas en un estado separado / coordinado y crecer con ese diseño que comenzar con un monolito e intentar extraerlo más tarde.
Básicamente, piense en las cosas por adelantado, pero no planee demasiado.
Asegúrese de conocer las nuevas características de Rails 3 (¿tienen sentido los motores / aplicaciones montables?)
- ¿Por qué un equipo de desarrollo debería elegir Node.js para aplicaciones web? ¿Es cierta clase de aplicaciones realmente más fácil para desarrolladores expertos con Node.js?
- Cómo elegir las mejores tecnologías para mi aplicación web
- ¿Qué tipo de aplicaciones web puedes hacer con PHP central?
- Cómo configurar notificaciones para publicaciones en redes sociales para todo el personal de la empresa
- ¿Cómo se puede usar la programación funcional en aplicaciones web, cuando las aplicaciones web tienen estado?
Aproveche las herramientas apropiadas para las necesidades específicas (¿pueden los redis quitarle algo de calor a su base de datos?)
Construye, mide, aprende.