We have lots of video files with various range requests made by the video processors.
On some requests (usually with Range: bytes=-16), the server spits out the http headers then hangs until it timeouts, while the backend has no problem serving the same request.
When it happens, it always happens on the same URL.
Restarting nginx solves the problem for the affected URL.
I don't think the same URLs are affected again, I think it randomly affects different URLs each time.