¿Cuáles son las ventajas de usar meteoros sobre tornado, o viceversa?

Trabajé con ambos, y en mi opinión, Meteor no se compara con Tornado, pero la verdadera comparación será entre Tornado desde un lado y Node.js (aunque no es un marco) /Express.js/Sails.js/ LoopBack / etc. desde el otro lado.

Tornado está tratando de hacer que el código Python síncrono funcione de forma asíncrona (usando corutinas debajo del capó), y en lugar de un nuevo subproceso por solicitud, todas las solicitudes se manejan utilizando un bucle de eventos de un solo subproceso, y eso es lo que Node.js y todos los marcos basado en hacer de forma nativa.

Por qué Meteor no se compara con Tornado en el contexto anterior, porque los chicos que lo crearon querían imitar la naturaleza sincrónica de otros lenguajes, como python, al emplear algo llamado Fibers, que le permite escribir código sincrónico sin devoluciones de llamada, aunque es construido en Node.js, lo que significa que todavía estamos hablando del núcleo de bucle de eventos de subproceso único; Meteor está tratando de mezclar esas 2 cosas vendiéndose como un marco moderno, elegante y de alta productividad, y al mismo tiempo es liviano y puede manejar tantas solicitudes como sea posible en un solo hilo.

Si todavía tiene la pregunta de cuál es mejor, Tornado o Node.js, bueno, eso es una cuestión de preferencia, aunque muchos puntos de referencia ven a Node como un marco mejor y más rápido, ya que está construido de pies a cabeza como un motor asíncrono, hay muchas personas que aún prefieren Tornado, especialmente cuando se usa con pypy en lugar del núcleo estándar de CPython.