
Building microservices with akka-http - martinsahlen
http://labs.unacast.com/2016/03/03/building-microservices-with-akka-http/
======
gamache
One nerd's opinion: Akka-http (and Spray, from which it came) is a building
block, not a web framework. It would be semi-reasonable to build a web
framework using akka-http, but suicidal to use it to build web services
directly. It would be like writing a web service directly on top of TCP --
there's value in abstracting all that crap away so that the developer can
focus on the actual problem space, rather than the transport.

If I were to suggest alternative web frameworks for Scala devs, I'd point to
Play Framework (full) or Scalatra (lightweight). Personally I jumped languages
and VMs to the Elixir community, where I am having a dandy time writing
asynchronous web APIs using the Phoenix Framework.

[1] [https://www.playframework.com/](https://www.playframework.com/) [2]
[http://www.scalatra.org/](http://www.scalatra.org/) [3]
[http://www.phoenixframework.org/](http://www.phoenixframework.org/)

~~~
muraiki
Do you find that you miss Scala's type system in Elixir? I'm a big fan of FP,
but I also really enjoy type safety. I just wrote a functional pipeline in
perl and most of the errors were dumb things I did that a type system would
have caught.

~~~
gamache
I do find myself missing strong typing sometimes, but I'd been writing scalaz-
flavored Scala, and one thing I do _not_ miss is working around JVM type
erasure all the time. It has been about six months since I've had to type
.asInstanceOf[T] and I am not looking back. :)

Aside from strong typing, almost everything related to FP/concurrency/fault-
tolerance that I liked about Scala is in Elixir -- first-class functions,
immutable everything, shared nothing, everything is actors passing messages,
supervision trees, etc. I can even whip out monads when I want them!

[1] [https://github.com/rob-brown/MonadEx](https://github.com/rob-
brown/MonadEx)

------
edvinbesic
Very interesting, I'm about to start looking into akka.net, does anyone know
of an equivalent quick introduction?

~~~
polskibus
Check this out [https://github.com/petabridge/akka-
bootcamp/](https://github.com/petabridge/akka-bootcamp/)

There is no akka-http in .net yet though.

------
CheKhovHemingw3
akka-http and the rest of the ecosystem run fine on Scala 2.11, that's the
status quo.

The question remains _how well_ Scala 2.12 will help in migrating to JDK 8.

The Github activity of the scalac core contributors [1] [2] [3] shows no hurry
on that.

[1] [https://github.com/adriaanm](https://github.com/adriaanm) [2]
[https://github.com/retronym](https://github.com/retronym) [3]
[https://github.com/lrytz](https://github.com/lrytz)

------
harakirikou
This just gave me a stomach bug...

~~~
seanp2k2
To me it also looked like a lot of work to do what was being done. I've been
pretty into Rails 5's API-only mode lately as it works great with Ember front-
ends. Here's a pretty quick guide to jump in if you're curious:
[http://emberigniter.com/modern-bridge-ember-and-
rails-5-with...](http://emberigniter.com/modern-bridge-ember-and-rails-5-with-
json-api/)

Rails scaffolds are ridiculous these days. A working object model + controller
+ routing resulting in a JSON API with CRUD ops on your new class is a one-
liner now.

