Muuntaja has been built with performance in mind, while still doing mostly everything in Clojure:
get-in
)The codebase contains the performance test, done using Criterium under the perf
Leiningen profile with a 2013 Mackbook pro.
NOTE: Tests are not scientific proof and may contain errors. If you have idea how to test things better, please poke us.
Muuntaja is tested against the current common ring-based formatters. It's fastest in all tests.
[ring/ring-json "0.4.0"]
& [ring-transit "0.1.6"]
[ring-middleware-format "0.7.0"]
Pedestal:
io.pedestal.http.content-negotiation/negotiate-content
for content negotiationio.pedestal.http.body-params/body-params
for decoding the request bodyio.pedestal.http/json-body
, io.pedestal.http/transit-json-body
etc. to encode responsesMuuntaja:
muuntaja.interceptor/format-negotiate
for content negotiationmuuntaja.interceptor/format-request
for decoding request bodymuuntaja.interceptor/format-response
to encode responsesmuuntaja.interceptor/format
all on one step
Instead of using generic encoders, one can also do custom endocing for Records. This can yield better performance.
See https://github.com/metosin/muuntaja/wiki/Configuration#custom-encoding for details.
Can you improve this documentation?Edit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close