reitit

ikitommi 2024-09-02T10:57:23.713839Z

Small maintenance release, [metosin/reitit "0.7.2"]: > 0.7.2 (2024-09-02) > • Speed up routes and inline it in code ring handler https://github.com/metosin/reitit/pull/693 https://github.com/metosin/reitit/pull/696 > • Fix: Can’t get descendants of classes https://github.com/metosin/reitit/issues/555 > • Faster keywordize https://github.com/metosin/reitit/pull/506 > • Updated dependencies: >

[metosin/jsonista "0.3.10"] is available but we use "0.3.9"
> [metosin/malli "0.16.4"] is available but we use "0.16.2"
> [com.fasterxml.jackson.core/jackson-core "2.17.2"] is available but we use "2.17.1"
> [com.fasterxml.jackson.core/jackson-databind "2.17.2"] is available but we use "2.17.1"

👍 2
🎉 2
Ben Sless 2024-09-02T13:29:59.371379Z

This might be a big claim but I think with this release Reitit is as fast as it could be in Clojure (without major implementation changes)

ikitommi 2024-09-02T14:19:47.959669Z

Which use case? basic routing? Ring routing?

ikitommi 2024-09-02T14:24:50.288569Z

Have you checked how the trie handles path parameters? I recall it creates a persistent array map. As the data is mostly read-only, a custom map-like (backed by a plain old hashmap) might be faster

ikitommi 2024-09-02T14:25:14.014939Z

The is an option to use (generated) records, but it's bit ugly

ikitommi 2024-09-02T14:25:58.859059Z

But, fast it is alright 💪

Ben Sless 2024-09-02T14:42:04.077699Z

Ring routing I mean The difference in performance between the backing structures is negligible in relation to these gains, as ring brings with it plenty of other compute besides routing

Ben Sless 2024-09-02T14:42:19.075549Z

For plain old routing we can go real crazy

Ben Sless 2024-09-02T14:42:55.965029Z

But I have barely seen routing even make a dent in my performance until now