Sí, con OpenCPU puedes escribir backend bastante complejo. Creé un sistema de informes avanzado basado completamente en R, incluida la autorización de los usuarios a través de Active Directory.
La pregunta es: ¿a qué costo? ¿Por qué necesita hacer esto en R, en lugar de en ASP.NET, Java o Python?
Hay un buen escenario: cuando necesita realizar un cálculo estadístico avanzado con R y desea minimizar la sobrecarga introducida por el lenguaje “host” Cualquier lenguaje de programación introducirá la sobrecarga en los procesos de R.
- ¿Cuál es un mejor marco para que un desarrollador web back-end aprenda, reaccione o sea angular?
- ¿Cuál es el lenguaje de fondo más popular (excepto PHP) y el marco para escribir web-gui?
- ¿Cuánto CSS debo aprender para el desarrollo de backend?
- ¿Es bueno ser un desarrollador full stack que solo un back-end?
- ¿Cuál es el trabajo de JS en el desarrollo de backend?
OpenCPU minimiza esto mucho, pero a un costo:
- la aplicación debe estar sin estado (sin “enrutamiento” en el servidor),
- toda la lógica de la GUI se implementará en JavaScript
- debe preocuparse por la autorización de los usuarios,
- El código avanzado, que normalmente se escribiría de manera orientada a objetos, se volverá cada vez más complicado (puede escribir OOP en R, pero es mucho menos conveniente que, por ejemplo, en C #).
- la depuración en el servidor es bastante dolorosa, debe recopilar buenas herramientas y recordar poner “imprimir” (impulsado por algún if-else y un parámetro para desactivarlas)
- El proceso R requiere algo de memoria RAM: aproximadamente 30–40 MB por proceso puro. Cuantos más paquetes cargue, más datos leerá, mayor será el proceso. Traduzca eso al número de usuarios que trabajan simultáneamente (ejecutando el proceso al mismo tiempo, superpuestos): 100 usuarios x 100MB = 10 000 MB = 10 GB de RAM. Sí, puede activar el almacenamiento en caché, el equilibrio de carga, pero aún así, debe proporcionar suficiente memoria para manejar eso.