-
Notifications
You must be signed in to change notification settings - Fork 240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upload tests timeout with caddy server #67
Comments
@Mikle-Bond
https://caddyserver.com/docs/caddyfile/directives/reverse_proxy#streaming buffer_responses will cause the entire response body to be read and buffered in memory before being proxied to the client. This should be avoided if at all possible for performance reasons, but could be useful if the backend has tighter memory constraints. |
Adding flush_interval may help reduce memory usage. |
Tested 10GbE with Caddy -> https://www.youtube.com/watch?v=0pD8fen2nNg |
@openspeedtest out of curiosity, did you check HTTP/3 ? |
@bt90 Yes #52 (comment) |
Caddy enables HTTP/3 by default. That's why i'm asking. Note that you need an explicit binding for 443/udp if you're using their docker container. As for nginx, it's still in development. |
Oh, I Installed it without using Docker https://caddyserver.com/docs/install#debian-ubuntu-raspbian |
That should work. Is a firewall involved? |
@bt90 |
Are you sure? I don't think that their HTTP/3 implementation is able to saturate a 10G link (yet). |
@bt90 I thought you asked about HTTP3 handshake https://youtu.be/_QQX0Ezpq8U?t=1235 over firewall. with TSL - H3 7000+ Download and 980+ Upload Docker Nginx HTTP 1.1 with TSL 9400+ Download and 9400+ Upload I think this was because of the consumer-grade hardware. I used. |
To people who end up here because of unrealistic upload speeds.
use this
It seems "buffer_requests", "buffer_responses" and "max_buffer_size" are deprecated. |
Hello.
I was trying to use caddy as reverse proxy in front of OST. The download tests work fine, but uploads behave weirdly.
It seems, that the first few packages are sent from browser to server, and the rest of transmission is not taken into account. Or fails. Or timeouts. I don't even know anymore. As graph shows overall average, there are 5-6 spikes at the beginning when xhr-connections are initiated, and then it approaches 0 as more 0-speed measurements are taken.
I have tried every trick I could find online:
reverse_proxy > transport > compression off
reverse_proxy > transport > versions 1.1
tls > alpn http/1.1
reverse_proxy > max_buffer_size 100MiB
request_body > max_size 100MiB
reverse_proxy > transport > max_response_header 100MiB
(just to be sure)reverse_proxy > buffer_requests
and/orreverse_proxy > buffer_responses
reverse_proxy > flush_interval -1
reverse_proxy > transport > dial_timeout 10m
I've tried all of the above in different combinations, and yet, upload won't work.
I know this is caddy-specific issue, but in another issue you've mentioned that you're interested in making caddy work with OST. The configs at #44 didn't work for me, and the author there didn't confirm them to work either.
I have also tried to serve files directly via caddy's built-in
file_server
, and I tried to mimic the Nginx's configs taken from here, to no avail either. Exact same results.Interestingly, when I proxied OST via caddy-l4 instance, without terminating TLS, everything worked fine.
I hope you will have a better luck configuring caddy. If you know anything else I can try, please let me know.
The text was updated successfully, but these errors were encountered: