Вот что я думаю, что мой сайт должен быть в состоянии предоставить пользователю.Что такое лучшая архитектура для веб-сайта управления файлами?
- Возможность загрузки файла в систему. Он не должен блокировать, пользователь должен иметь возможность просматривать другие страницы веб-сайта, пока загрузка продолжается. После завершения загрузки пользователь получит уведомление о загрузке.
- Пользователь должен иметь возможность просматривать свои загруженные файлы на веб-сайте.
- Возможность редактирования файлов в веб-браузерах с использованием сторонних API
- Число пользователей составит около 5000, и все они могут загружать файлы одновременно, поэтому производительность не должна уменьшаться.
- Где я должен хранить эти файлы? Как убедиться, что чтение и запись файлов в этом каталоге должны обрабатывать параллельный запрос пользователя?
Учитывая вышеуказанные баллы. Какой должен быть лучший способ архитектовать этот сайт?
Существуют ли существующие веб-фреймворки, которые играют вместе с такими типами архитектуры, как rails, express?
Относительно хранения файлов я могу посоветовать вам НЕ использовать БД. Хешируйте содержимое файла и используйте его как имя файла хранилища. Персистировать исходное имя файла, хэш-значение, путь хранения и идентификатор пользователя в любом БД. Также вы должны прочитать о ограничениях размера загрузки файлов. – jean