reverse proxy using tokio and hyper, there are few things to figure out on high traffic sites, it doesn’t work as well compared to nginx after a certain threshold.
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.
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.
reverse proxy using tokio and hyper, there are few things to figure out on high traffic sites, it doesn’t work as well compared to nginx after a certain threshold.
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.
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.