У нас есть клиентское приложение, которое позволяет пользователям загружать аудиофайлы в формате MP3 с полной длиной 192 Кбит / с. Поскольку файлы хранятся для нас как для бизнеса, мы должны иметь возможность:
1) Скопировать файл из внешнего хранилища в локальный кеш Сервера
2) Скопируйте этот файл клиенту, который его запросил
Очевидно, что дальнейшие запросы к тому же файлу будут поступать из кеша и не будут нуждаться во внешнем.
Теперь у нас уже есть текущая система, которая делает это (использует Squid Cache), но проблема в том, что 2 выполняется только после полного завершения 1. Это означает, что если для 10-минутной дорожки со скоростью 192 Кбит / с требуется 75 секунд для копирования из внешнего расположения в кэш, тайм-аут клиента HTTP начинается примерно через 60 секунд! Это не соответствует нашим требованиям.
Кажется, что нам нужен кеш, который может передавать клиенту, пока он получает данные из внешнего местоположения. И мои вопросы:
1) Можно ли это сделать с помощью Squid Cache (это наследие, а не мой выбор)?
2) Если нет, то какая технология будет наиболее подходящей для такого сценария (стоимость на самом деле не проблема)?
Пожалуйста, дайте мне знать, если это не понятно в любом случае!