| I'd say go with the Play Framework with either Java or Scala. The views are type checked as well, like in asp.net mvc.
In fact, it's inspired by the razor template engine, you won't miss the magical @. There are a ton of templates available[0], auth, websockets, upload etc.. Over the last few years, the Play framework improved a lot, Java is not a second class citizen anymore, like many
people think. > I am writing a new web application from scratch. It is not trivial - there will be a requirement to provide streaming video and also facilitate live video streams between users. This is from the official docs: Because of the way Play works, action code must be as fast as possible, i.e., non-blocking. So what should we return as result if we are not yet able to generate it? The response is a future result! A Future[Result] will eventually be redeemed with a value of type Result. By giving a Future[Result] instead of a normal Result, we are able to quickly generate the result without blocking. Play will then serve the result as soon as the promise is redeemed. The web client will be blocked while waiting for the response, but nothing will be blocked on the server, and server resources can be used to serve other clients. Also make sure to checkout the streaming section of the docs[1]. If you are looking for a robust framework which embraces performance and developer productivity, Play is the way to go.
I've never found a framework that could satisfy all my needs, like Play. I didn't even mention all the awesome features but if you are interested check out the Play Philosophy[2]. Why am I so convinced about Play ?
I have more than 5 apps in production, I couldn't be more happy about my decision to use Play.
I wrote applications in asp.net mvc, Spring MVC/Boot, Rails for many years, they all failed me. [0] http://www.lightbend.com/activator/templates [1] https://www.playframework.com/documentation/2.5.x/ScalaStrea... [2] https://www.playframework.com/documentation/2.5.x/Philosophy |
Could you elaborate more on how these alternatives failed you?
I've been considering jumping into the Java/Play ecosystem for awhile but have been hesitant so far. Analysis paralysis at its worst!