Hmm well i have figured out it is my mp4 buffers that need fixing but i
recon my largest video file size on the server is maybe 700mb as of
figuring
out what to set this to i am currently just playing around with it to
see
what works best.
Which shows disk IO is much better which to me indicates there were/are
too
many small writes to disk, when some parts are slow tuning is a big time
issue with nginx no matter which OS your running.
My new soloution did not last very long everything shot up again so the
mp4
function is needed to drop I/O usage but as of what the optimal setting
for
the buffers are realy does baffle me
I don’t know if what you’re experiencing is related to a problem I’m
still tracking down, specifically that multiple redundant read-streams
and corresponding temp_files are being opened to read the same file from
a backend server for what appears to be a single initial get request by
a client for a large mp4 file which was not yet been locally reverse
proxy cashed by nginx as an substantially static file. This appears to
end up creating 6-10x more traffic and disk activity than is actually
required to cache the single file (depending on how many redundant
read-stream/temp_files are created. If a server is attempting to
reverse proxy many such relatively large files, it could easily saturate
nginx with network/disk traffic until most such files requested were
eventually locally cached.
easily saturate nginx with network/disk traffic until most such files
Posted at Nginx Forum: nginx Info Page
Well i don’t proxy anything everything is hosted locally and php is run
by
fastcgi but it is all on the same machine.
After benchmarking this was my output. I have no idea if it is good or
bad
or what, i am rather hoping someone with more understanding of I/O usage
and
if i have hit my max or not can tell me.
On Sat, Jun 28, 2014 at 12:38:12AM -0400, c0nw0nk wrote:
}
Note that when using mp4 module, you should not set
mp4_buffer_size too high. It’s initial size of a buffer used to
read mp4 files, and if a value specified is bigger than size of
the moov atom in an mp4 file, reading extra bytes will be
meaningless. It is generally recommended to set it to something
like 512k (the default) or slightly larger (1m, 2m). Larger
values make sense only if most of your mp4 files have huge moov
atoms.
Note well that if you use mp4 pseudo streaming, you should make
sure that mp4 files are correctly prepared - i.e., with moov atom
placed before mdat. While nginx will be able to work with files
with moov atom at the end, it won’t be able to do this
efficiently.
I actualy came accross a setting in my device manager called write cache
buffer flushing. When you disable Write Cache Buffer Flushing, this
allows
application software to blaze ahead after writing data to disk without
waiting for the physical write to complete.
I have enabled it rebooted my machine and will post in a few hours how
things are going with it.
Now this i won’t be a soloution but will deffinetly help write allot
more
data simultaneously. What should help until i find a SSD/SAS to dedicate
my
money to.
I did a simple test to confirm it is I/O usage due to large files i run
nginx same traffic conditions but i block “deny all;” to mp4, flv files
and
my i/o usage by nginx is about 1mb max and a few kb so i can confirm it
is
large files that are doing it i am currently looking into what would be
better for me a SSD or a SAS 15K RPM.