This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2024-01-30
Channels
- # announcements (5)
- # babashka (2)
- # beginners (85)
- # cider (59)
- # cljs-dev (2)
- # clojure (10)
- # clojure-europe (61)
- # clojure-gamedev (20)
- # clojure-nl (2)
- # clojure-norway (9)
- # clojure-uk (5)
- # cursive (24)
- # data-science (4)
- # datascript (8)
- # emacs (1)
- # fulcro (8)
- # graalvm (30)
- # gratitude (9)
- # hyperfiddle (71)
- # introduce-yourself (1)
- # jackdaw (1)
- # leiningen (8)
- # london-clojurians (1)
- # missionary (3)
- # other-languages (10)
- # pathom (8)
- # pedestal (18)
- # polylith (4)
- # proletarian (5)
- # reitit (7)
- # releases (4)
- # ring (8)
- # sci (10)
- # shadow-cljs (27)
- # squint (3)
- # tools-deps (2)
- # xtdb (17)
I'm working out some complicated details related to sunsetting the current metrics and tracing code and replacing it with something modern and well supported. Doing that and maintaining some semblance of backwards compatibility is a challenge.
We're also investigating whether a Netty-based integration is justified. Netty is more complicated to work with than Jetty, but may be able to yield higher throughput, especially when some work in asynchronous.
There's also a bit of Pedestal that has never been well documented or tested; I don't like to take on more than I can maintain.
There are alternatives: ex with loom that could make it easier to maintain that introducing netty + deeper async
That would be a good bet for the future, as jvm internals get modified to make arbitrary code more loom "compatible"
Lastly for tracing, loom means you can just leverage automatic instrumentation via java agent (for instance from opentelemetry) and also not have to build you own abstractions to work-around tracing support across (arbitrary) async operations (trace/spans propagation etc, been there, done that, not fun).
wondering if there’s still cases where you’d reach for async pedestal (returning a channel) if it was integrated with nima?
returning a channel is a mechanism for relinquishing the thread while work happens in the background, because platform threads are precious
right. So if I that aspect of pedestal wouldn’t make sense in that context anymore it probably offers some nice possibilities to simplify. Less so if backwards compatibility needs to be maintained.