Rust es absolutamente adecuado para backend web a partir de hoy. Tiene Hyper como un servidor central de http / cliente lib y varias cajas que hacen todo lo necesario para desarrollar un backend de cualquier complejidad. Tiene soporte asíncrono, lo que significa que es súper eficiente en el manejo de toneladas de conexiones + en realidad futuros súper livianos y sin recolección de basura que llevará su desempeño a la luna. También tiene toneladas de marcos de nivel superior sobre Hyper como Rocket, Iron, etc., pero personalmente prefiero usar Hyper. Incluso tiene implicaciones de cosas exóticas como el servidor GrapgQL.
En términos de productividad de desarrollo, está un poco por detrás de los lenguajes de alto nivel, al menos al comienzo del proyecto. Yo diría que en comparación con Ruby on Rails y Scala es algo así como: RoR: 200%, Scala – 130%, Rust – 100%. Pero en comparación con RoR, obtienes un aumento de rendimiento increíble + en las etapas posteriores del proyecto, en realidad serás más productivo gracias al increíble sistema de tipo estático en Rust (es decir, lo que a menudo encuentro en proyectos Rails a mediano plazo es mucho tiempo perdido) sobre la corrección de errores y la liquidación de una gran cantidad de deudas tecnológicas, no sucede a esa escala en Rust). En comparación con Scala, el beneficio clave es el rendimiento y la demanda de recursos muy baja, lo que puede ser importante cuando se tienen muchos microservicios. Por ejemplo, el pequeño servicio Scala puede consumir fácilmente hasta 300 MB de RAM, Rust solo obtendrá 30 MB.
No sé cómo se compara con C / C ++ para el desarrollo web, pero supongo que es un gran dolor hacer desarrollo web en estos lenguajes. En Rust no lo es!
- ¿Cuáles son algunas de las ventajas que Node.js tiene sobre otros marcos de back-end?
- ¿Cuáles son las cosas que debe saber un desarrollador de backend de Android?
- ¿De qué manera los front-end (Android, iOS, una aplicación Angular.js, etc.) se comunican con el back-end, a través de las API RESTful?
- ¿Cómo debo aprender sobre el desarrollo web back-end? Estoy bien versado en desarrollo front-end.
- ¿Qué debo aprender para el desarrollo web (front-end y back-end) en 2017?