<div dir="ltr"><div class="gmail_extra">Lukas, we can meet situation, when even SSD is too slow because it is plugged via slow SATA cable that can do only 6 Gbit/s but we want 10 Gbit/s or even 20</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra">More often we have to handle load when there are 10 or 20 HDD  (JBOD, so no raid, just 20 mounted devices) and we need to serve data from them.</div><div class="gmail_extra"><br></div><div class="gmail_extra">If too many users want data from one disk, this disk blocks. Without any explicit actions all disk requests to this disk are taking all threads from async pool.</div><div class="gmail_extra"><br></div><div class="gmail_extra">If we try to use   file:read_file at this moment to try to read from SSD, we cannot read it, because all threads from thread pool are blocked on slow HDD.</div><div class="gmail_extra"><br></div><div class="gmail_extra">This is why we maintain our own internal queue with timeout per each device and try to send 10-40 simultaneous requests to each device.</div><div class="gmail_extra"><br></div><div class="gmail_extra">It is almost impossible to do with LVM or RAID and completely impossible to do with hardware RAID (but hardware raid is not about speed), but such approach is possible with separate HDD.</div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div><div class="gmail_extra"><br></div></div>