My organization has chosen to adopt Thrift messaging as the lingua franca to integrate our clients and services. All our services are written (or will be written) in Scala while we have clients written in other languages.
Currently (to my knowledge) Scrooge is the only Thrift IDL compiler for Scala and it targets Finagle. I would like the option of building services on Spray.
What are my options using off-the-shelf (open source) software, if any?
We are avid Thrift/Finagle users and can honestly say there is nothing out there that compares to Finagle.
A few things you get out-of-the box with Finagle:
maven-finagle-thrift
plugin, which is a Maven flavour of Scrooge.Now about Finagle, have a look here. Compared to Finagle, Spray is a toy. Finagle is by far the best Scala tool for distributed services:
ThriftMux
and handlers etc.)I'm not aware of other Thrift options so deeply integrated with Scala and there's little reason to go outside of Finagle. You do however have to go with the full ecosystem to really benefit from it.