Estamos creando una aplicación web de agregador de contenido usando React.js + Node.js. ¿Cuáles son las mejores prácticas / lecciones aprendidas al construir con este marco?

React js y nodejs como stack frontend / backend es una excelente opción, ya que reactjs tiene la capacidad de manipular dom más rápido y los nodejs son asíncronos y escalables pueden ser un lenguaje del lado del servidor eficiente. La complejidad en las aplicaciones web de reacción generalmente aumenta a un punto donde la gestión del flujo de datos se vuelve bastante engorrosa. Teniendo esto en cuenta, es beneficioso comenzar a utilizar el flujo para el control y el flujo de datos desde el principio. Administrar devoluciones de llamada en nodejs puede ser difícil al principio, pero una vez que lo domine, las devoluciones de llamada podrían salvarle la vida en muchos casos.

Todo funciona en forma de estados y accesorios en reactjs y los accesorios deben usarse correctamente para permitir el flujo de datos de las clases primarias a las secundarias.

El flujo unidireccional de datos en reactjs puede convertirse en un bloqueador en ciertos casos de uso, pero se puede eludir administrando los estados adecuadamente.

Un consejo útil sería usar nginx para servir contenido estático y contenido dinámico desde nodejs usando proxy pass.

El uso de reaccionar placa de caldera, paquete web, cargador en caliente y herramientas de desarrollador de reacción puede reducir una cantidad significativa de tiempo de desarrollo.

Si va a crear una versión móvil de webapp, el marco de diseño de materiales lite de google podría ser útil.

En el lado del backend, los módulos npm como forever / pm2 para mantener las API en funcionamiento, fluidos para mantener registros y árbol de requisitos para incluir directorios y modularizar el código podrían ser útiles.

Express y hapijs son dos marcos populares para crear servidores, pero usar un servidor http central y agregarle funcionalidades cuando sea necesario es más eficiente en cuanto al rendimiento.

Personalmente no me gusta usar swig o jade y prefiero vincular reactjs al nodo estrictamente usando solicitudes ajax.

Puede haber mejores respuestas, pero espero que esto ayude.

  • Debe familiarizarse con el marco de solicitud / solicitud, el marco más popular para descargar contenido
  • cheerio es jquery como marco para extraer los datos de las páginas HTML https://github.com/cheeriojs/che
  • No tiene una cola de tareas, pero podría recomendar construir una cola de tareas usando Gulp, con un fondo redis para agregadores simples que se ejecutan con más de 10 nodos. Los patrones de publicación / suscripción de Redis pueden ayudarlo a publicar la solicitud, utilizando tareas Gulp que se ejecutan periódicamente para extraer la solicitud en espera y ejecutarla.

En el mundo de Python, puede considerar Celery Celery: Distributed Task Queue

More Interesting

¿Cuáles son las preocupaciones de seguridad en la representación del lado del cliente de una aplicación web?

¿Cuáles son las aplicaciones web más impresionantes creadas por los estudiantes mientras asisten a escuelas de codificación como Flatiron School, Fullstack Academy, DigitalCrafts, MakerSquare, Hack Reactor, Dev Bootcamp, etc.?

¿Cuáles son los aprendizajes clave que aplica cuando prueba un prototipo de aplicación web?

¿Existe una aplicación web de calendario que sea mejor que Google Calendar en términos de una interfaz de usuario?

¿Cómo mixapp puede servir un archivo que se está cargando?

Cómo mejorar mi retención de usuario de una aplicación web

¿Cuáles son los mejores consejos para crear una tienda web afiliada?

¿Qué se necesita para hacer un sistema basado en la web que sea impenetrable?

¿Qué tecnologías utilizarías para construir una aplicación web de este tipo?

¿Está muerto el elemento del formulario web?

¿Cuál es el próximo gran servicio web?

¿Cuál es una buena alternativa a la Lista de tareas pendientes de Basecamp?

¿Qué es un buen marco PHP como WordPress, pero para construir aplicaciones web? Necesito un marco que pueda manejar la administración de usuarios, el motor de plantillas, las actualizaciones de seguridad y que tenga buena documentación para el desarrollo.

¿Cuáles son las aplicaciones de los diversos mecanismos de sincronización en el kernel de Linux?

Cómo construir una API primero o CMS desacoplado desde cero