¿Qué es el marco de juego?

Marco de juego: un marco de desarrollo web sin servidor basado en principios reactivos. Play es compatible con Java y Scala.

Las siguientes son las mejores características del framework:

Características que hacen que Play Framework sea prometedor:

  1. E / S sin bloqueo : antes de leer las ventajas de E / S sin bloqueo, diría qué es una E / S de bloqueo. En una gran aplicación empresarial, los servicios esperan la mayor parte del tiempo la respuesta de otros servicios. Para lograr esto, los servicios se basan en grupos de subprocesos: un subproceso para cada solicitud, aplicación web típica basada en servlet. Esto hace que las aplicaciones sean lentas, es decir, aumentar la latencia del servicio. El juego se construyó sobre Akka y Netty, que son asíncronos, es decir, no más esperas en las llamadas de servicio. Esto funciona de una manera diferente. Habría un hilo por núcleo de CPU que atiende todas las solicitudes. Si una solicitud realiza una llamada remota, en lugar de esperar a que la llamada remota complete el hilo, se ejecuta otra solicitud. Y vuelve a la solicitud anterior una vez que recibe la respuesta de la llamada remota, es decir, se activa un evento, basado en eventos. Esto parece simple, pero créeme Aync es una espada de doble filo. Si no tiene cuidado, terminará en algo que llamamos pesadilla de devolución de llamada. Java aún carece de muchas características para admitir Async, por ejemplo, cierres. Aconsejaría ir con Scala + Play.
  2. Programación funcional: la palabra de moda de finales de 2015. No más XML, no más clases de configuración Java enormes, no más anotaciones (Spring Framework, se trata de usted). Créame, he desarrollado aplicaciones con Spring 3.x, 4.x. Estas configuraciones parecen ser una bendición disfrazada cuando comenzamos el desarrollo. A medida que la aplicación crece, el negocio exige una configuración personalizada, nunca podemos estar seguros de todos los efectos secundarios que causará. Entonces es todo un desastre. En juego es un poco diferente. Todo, desde rutas (puntos finales de URL) hasta configuraciones, es una función y devuelve un valor. Play Framework parece tener el mejor uso de los sistemas seguros de Type. Hace mucho más fácil reutilizar componentes, comportamientos de complementos.
  3. Implementaciones en caliente – Reinicios – Informe de errores: no es una de las mejores características, pero créanme que es una bendición disfrazada para los desarrolladores. No escribo código de una vez y creo que la mayoría de los desarrolladores lo hacen. Escribo un pequeño fragmento de código, lo ejecuto, lo pruebo y continúo con el siguiente. Como puede ver, esto puede requerir múltiples reinicios. Con el juego, no necesita reiniciar todo el sistema para cada cambio. Sondea en la base del código e implementa el último código e inicia el sistema en menos de un minuto. Error al informar, aah, esto es genial. El mensaje de error es al grano. El desarrollador no necesita pasar por un gran seguimiento de la pila (de nuevo, ¡¡Spring you you !!) para descubrir qué está sucediendo mal.

Teniendo en cuenta todas las características, Play Framework tiene una característica prometedora.