La respuesta será “depende” del tipo de red social que desee construir. No hay muchas pilas para considerar. Una búsqueda rápida en Google le habría proporcionado un diagrama arquitectónico completo para todas las redes sociales actualmente en el mercado.
Lo más fácil es construir el back-end sobre un proveedor de servicios en la nube (IAAS): AWS, Google Cloud Platform, Microsoft Azure. Si estás en China, están Aliyun y Joyent. Como se trata de una red social, desea que la mayor parte del trabajo se realice en el backend. En cuanto a noSQL vs. SQL, dependiendo de cómo desee acceder a esos datos, Stack Overflow tiene toneladas de respuestas para esto.
En el front-end, diría que vaya directamente a dispositivos móviles en iOS o Android. No construyas ninguna red social a través de la web (pequeña, tal vez para empresas, como Slack, pero Slack es una bestia rara). Nunca irás a ningún lado desde la web, garantizado. Vaya primero al móvil, luego a la web. La razón más importante es que la mayoría de las nuevas generaciones y otros lugares en desarrollo fuera de EE. UU. / Europa se han pasado directamente a los dispositivos móviles y se saltaron la era de las PC.
- Tengo una agencia de personal y quiero un sitio web donde los empleadores puedan encontrar a sus mejores trabajadores. ¿Cuál es el mejor software para crear el sitio web?
- Mi profesor recomienda realizar pruebas unitarias cada vez que creo algo. ¿Es esta práctica realmente recomendada?
- Tenía muchas ganas de aprender programación de computadoras. Sé un mínimo de HTML y CSS. ¿Qué idioma debería aprender realmente para hacer cosas geniales?
- Tengo tiempo para dedicarme a un campamento de entrenamiento y me preguntaba si Bloc es una herramienta que un "novato" podría seguir.
- Mi código funciona según lo previsto en el Editor HTML en línea, pero no exactamente en las páginas de github o jsfiddle. ¿Que puedo hacer?