###Finagle

http://monkey.org/~marius/funsrv.pdf

  1. Futures The results of asynchronous operations are represented by futures which compose to express dependencies between operations.

  2. Services Systems boundaries are represented by asynchronous functions called services. They provide a symmetric and uniform API: the same abstraction represents both clients and servers.

  3. Filters Application-agnostic concerns are encapsulated by filters which compose to build services from multiple independent modules.