reverse proxy using tokio and hyper, there are few things to figure out on high traffic sotes, it doesn’t work as well compared to nginx after a certain threshold.
Yeah, I’m looking at it, will probably rewrite the logic using Pingora.
or maybe I did something wrong. Not sure if its something using the hyper legacy client, that has connection pooling, maybe there’s something there to improve.
or maybe the use of RwLock to share the config struct is reaching some limits.
Will try using parking_lot to see if anything changes.
That’s too bad, I was thinking of replacing our nginx proxy with Rust. We need a little logic, so we currently have nginx -> gateway service -> microservice, and I was hoping to drop nginx. Maybe I still can, but it sounds like there would be some tradeoffs.
reverse proxy using tokio and hyper, there are few things to figure out on high traffic sotes, it doesn’t work as well compared to nginx after a certain threshold.
Maybe Cloudflare’s pingora suits this purpose better given that it is being used by cloudflare to proxy traffic at a large scale
Yeah, I’m looking at it, will probably rewrite the logic using Pingora. or maybe I did something wrong. Not sure if its something using the hyper legacy client, that has connection pooling, maybe there’s something there to improve.
or maybe the use of RwLock to share the config struct is reaching some limits. Will try using parking_lot to see if anything changes.
That’s too bad, I was thinking of replacing our nginx proxy with Rust. We need a little logic, so we currently have nginx -> gateway service -> microservice, and I was hoping to drop nginx. Maybe I still can, but it sounds like there would be some tradeoffs.
this might be more on me writing shit code than on tokio/hyper. give it a go.