Как использовать дисковую квоту в приложении rails? - PullRequest
0 голосов
/ 07 февраля 2012

Я хочу использовать квоту linux в приложении rails для ограничения использования пространства пользователем на диске.Но моя текущая реализация сохранит вложения пользователей, поскольку они принадлежат тому, кто запускает приложение rails.Нужно ли создавать каждого пользователя на сервере Linux и назначать ему дисковую квоту?

Итак, есть ли какой-нибудь плагин rails / gems, позволяющий мне это делать?А что такое решение GitHub?Они не только ограничивают размер вложений, но и пользовательские git-репозитории.Благодарю.

1 Ответ

5 голосов
/ 07 февраля 2012

Лучше ограничить использование дискового пространства пользователя на уровне приложения без использования инструментов уровня ОС.

В качестве простого примера добавьте поля disk_quota и current_disk_usage в модель пользователя, обновите current_disk_usage после каждой успешной загрузки файла.Перед каждой загрузкой файла генерируйте исключение, если размер загружаемого файла + current_disk_usage> disk_quota.

Это гораздо более универсальный и кроссплатформенный подход.Таким образом, вы не ограничиваетесь использованием ОС Linux, можете хранить свои файлы и серверы приложений на разных компьютерах, можете хранить свои файлы в Amazon S3 и т. Д. Кроме того, это намного удобнее в обслуживании.

...