¿Estoy siendo estúpido al elegir MySQL para mi aplicación Node.js en 2016?

Probablemente no: MySQL está probado en batalla en los entornos más desafiantes del mundo, como Facebook. Tiene una comunidad extremadamente activa y tiene un excelente soporte en todas las plataformas importantes.

A menos que tenga un caso de uso que sea completamente inapropiado para un sistema relacional, MySQL es una buena opción para un back-end.

Dicho esto, sería tonto administrar su propia base de datos MySQL cuando algo como Amazon RDS pueda hacerlo por usted.

Parte Dieux:

Dado que puede usar cualquier cantidad de bases de datos relacionales decentes, desde MySQL, Postgres a SQL Server, etc., la verdadera pregunta que debe hacer es: “¿Es un modelo relacional la forma adecuada de modelar el dominio del problema con el que estoy trabajando?” Para que eso se responda, bueno, debe proporcionar información sobre qué es lo que desea construir y cuáles deben ser las características operativas / de tiempo de ejecución.

No lo consideraría necesariamente un movimiento estúpido si elige MySQL para trabajar con Node.js. En general, lo consideraría como una opción “amateur”, especialmente cuando se trata de una relación entre Node.js y el sistema de base de datos. No está mal, ni es una mala elección. Generalmente se debe a un sistema que usa MySQL como un sistema de base de datos predeterminado después de su primer arranque. En otras palabras, MySQL es el padre de las bases de datos en todo el mundo y, la base de datos más antigua que todavía se usa en la era actual.

Node.js es un Javascript basado en servidor, y comprenda que Node.js NO está diseñado para ejecutarse como un lado del cliente (su navegador / aplicación). Dicho esto, permítanme aclarar para beneficio de todos. Consideremos esta analogía:

Veamos esto como si tuviera ‘mano derecha’ y mano izquierda’ y es lo que necesita para llevar una vida lo más completa posible. Entonces, ¿qué pasaría si tuvieras ‘ mano derecha ‘ y ‘ mano derecha ‘? Será muy difícil y difícil vivir una vida con ese tipo de rareza, a la vez que solo tiene una ventaja: ser capaz de hacer un apretón de manos perfecto.

La ‘mano derecha’ de Javascript sería el navegador del lado del cliente (es decir, su navegador en su computadora de escritorio o su dispositivo móvil / tableta), mientras que la ‘mano izquierda’ de JavaScript sería Node.js. Nuevamente, Node.js se está construyendo para el propósito del servidor, de modo que pueda comunicarse entre sí únicamente en JavaScript.

Esto nos lleva al siguiente punto importante a considerar. Según la práctica común en el mundo de los geeks y su “servidor secundario”, al tiempo que incluye servidores en el mercado actual, el lenguaje estándar de entrega de datos es XML, JSON y url. Sin ellos, es más difícil que los datos se transmitan / intercambien entre servidores / aplicaciones.

Dado que JSON está realmente basado en Javascript, por lo tanto, tendría mucho más sentido que Node.js trabaje con JSON, por una razón obvia. Si bien utiliza esta razón como un enfoque para reducir a pocas bases de datos, antes de que pudiera encontrar un “compañero de baile de vals” perfecto para Node.js. Todo debido a este criterio: la capacidad de entregar datos únicamente en Javascript. En pocas palabras: es mejor que trabajen juntos en el mismo “idioma nativo de nacimiento” de los demás. Uno de estos pocos es “MongoDB”.

Si alguna vez llego al punto de ver que MongoDB fue elegido como base de datos que trabaja con Node.js, clasificaría esa elección como “elección avanzada del programador”. MySQL es un padre tradicional en el mundo de las bases de datos, de ahí que yo lo vea como una “linda elección” como aficionado.

Si lo elige porque cree que tiene las mejores herramientas de creación de perfiles de rendimiento y optimizador de consultas, entonces sí … es tonto.

Pero si lo elige porque desea un RDBMS confiable, lo suficientemente rápido, escalable, económico y fácil de entender, es una muy buena opción.

Como toda entrega de software, debe elegir su compromiso. A menos que sepa que necesitará características en la base de datos X que no están en la base de datos Y, hay pocas opciones incorrectas, incluso SQLite es viable ahora que los lenguajes con un fuerte control de concurrencia son comunes y la memoria es barata.

Absolutamente no. MySQL es una gran herramienta y se usa con bastante frecuencia. Casi cualquier sitio web de WordPress que vea tiene una base de datos MySQL, que representa más del 50% de la web.

También es adecuado para Node.js y generalmente es gratuito. Definitivamente no estás siendo estúpido 🙂

More Interesting

Tengo 15 años y quiero aprender desarrollo web. Tengo una comprensión básica de html, CSS, JavaScript, y estoy aprendiendo Rails. ¿Cuánto tiempo debería pasar antes de que sea un desarrollador en funcionamiento y qué debo aprender?

Soy estudiante de primer año de ingeniería eléctrica. Estoy realmente interesado en el desarrollo web, el procesamiento de imágenes y el desarrollo de software. ¿Qué debo hacer en el verano para desarrollar suficientes habilidades?

Quiero aprender .NET. ¿Dónde empiezo y cómo procedo?

Cómo aprender el desarrollo front-end (lo básico) en una semana

Quiero profundizar en la programación. Tengo 17 años y estudiaré CS en la universidad. He hecho algo de Java en la Harvard Summer School. ¿De dónde empezaré?

Me estoy enseñando a codificar como un hobby y sé HTML, CSS y algunos jQuery / JS. ¿Cuáles son algunos proyectos front-end que podría intentar construir para ponerme a prueba?

Soy competente con Python y Java, y tengo conocimiento práctico de Django. Estoy tratando de tener una idea para mi primer gran proyecto (algo que será útil para las personas y se verá bien en mi currículum). ¿Hay alguna idea?

¿Cómo usar HTML, CSS y JavaScript para construir un sitio web? ¿Es al marcar, diseñar y escribir páginas web en un sitio web, o qué

¿Es posible aprender algunas habilidades de desarrollo web para ganar algo de dinero en un mes? Pronto dejaré mi trabajo actual, luego quiero probarme en la industria del desarrollo web y aprender nuevas habilidades en perspectiva.

He intentado toneladas de lenguajes de programación y frameworks, pero no soy dueño de ninguno. Sé que necesito concentrarme en varios idiomas, pero no quiero perderme otras tecnologías nuevas. ¿Qué tengo que hacer?

Me gustaría conseguir un trabajo como desarrollador. Estoy aprendiendo Java, HTML, CSS. ¿Qué proyectos puedo hacer para saber lo que no sé y también agregar a una cartera?

Me encanta la forma en que el texto se desliza en este sitio http://riiotlabs.com/fr/accueil. ¿Se logra esto usando js css? ¿Qué tutorial puede ser de ayuda?

Cómo hacer páginas en el tema Boardwalk (haga clic en el enlace en detalles)

Sé lo básico de Python y Django, quiero aprender PHP y Laravel, ¿por dónde empiezo?

Cómo eliminar una imagen de una base de datos y una carpeta SRC en PHP