Mint :)

Just played with Mint for an hour. It’s really nice :clap:
Thats it, that’s the whole post.

2 Likes

Also have a look at Finch, built on top of Mint and NimblePool by @keathley

1 Like

I wish there was a Tesla adapter for Finch. Would make it easier to try it against other options.

I believe there’s an open issue for a Tesla adapter. You might see if anyone is making progress on it. Happy to provide a review or guidance if that’s helpful.

1 Like

Curious about this line in the NimblePool readme:

(in fact, pools are not a good option to manage resources with multiplexing in general).

Whats the main reason(s)?

I’m guessing it’s because when you are multiplexing by definition you have a shared resource (the multiplexed channel), where you will then need to figure out how to handle access contention between your pool workers, liable to be a pain in the rear, inducing performance bottlenecks, and also, very likely error prone, even in a safe system like BEAM.

If I’m not mistaken, that’s not saying that you can’t “meta-pool”, that is - You could probably do one-pool-worker-per-channel and have the worker do the demuxing and handling of each multiplexed resource within the channel. You just have to think carefully about what the domain intrinsics are and how those partition into pool workers.

1 Like

This is correct. This is why Finch’s http/1.1 and http/2 “pool” implementations are completely different, and why the user is required to specify which they want up front.

Mint is really nice, I did a few blog posts about it last year: https://scoutapm.com/blog/how-to-use-mint-an-awesome-http-library-for-elixir-part-01

1 Like