Introduction

dispatch is a scala client-side library that helps you issue HTTP based calls. It uses async-http-client underneath (which uses netty) to make the actual calls. You can consider dispatch to be a relatively thin layer over async-http-client that promotes the use of scala idioms.

The dispatch author does not appear to be taking pull requests for doc updates lately, which is fine, so I have captured some user notes in this document. dispatch has been around awhile, is fairly mature and there are decent alternatives. I do not use this library all the time but when I do, I always feel that I am relearning how to use the library. Hence, I want to capture my user notes in a structured form that could also help others.

There is a nice tutorial here that explains the basics of async-http-client which if you read it, you will get an appreciation for the vocabulary that dispatch provides on top of async-http-client. Thank goodness for dispatch! The dispatch documentation site is here and there is some more blog content here.

In the end, client's like dispatch/async-http-client really are mechanisms to access data that have a high data access latency and the techniques for creating such programs are common.