Я використовую gridfs під час роботи на одному з наших серверів, який є частиною веб-сайту, що порівнює ціни, з почесною статистикою трафіку (близько 25 тис. Відвідувачів на день). На сервері мало оперативної пам'яті, 2 гігабайт, і навіть процесор не дуже швидкий (Core 2 duo 1,8 ГГц), але сервер має достатньо місця для зберігання: 10 Тб (sata) у конфігурації raid 0. Робота, яку виконує сервер, дуже проста:
Кожен продукт на нашому порівняльнику цін має зображення (налічується близько 10 мільйонів товарів відповідно до нашого продукту db), а завдання серверів - завантажити зображення, змінити його розмір, зберегти в сітках та доставити в браузер відвідувачів. .. якщо він відсутній у сітці ... або ... доставити його до браузера відвідувачів, якщо він уже збережений у сітці. Отже, це можна назвати "традиційною схемою CDN".
Ми зберегли та обробили 4 мільйони зображень на цьому сервері, оскільки він працює і працює. Змінення розміру та збереження матеріалів здійснюється простим php-скриптом ... але, безсумнівно, скрипт python або щось на зразок Java може бути швидшим.
Поточний розмір даних: 11,23г
Поточний розмір сховища: 12,5 г
Індекси: 5
Розмір індексу: 849,65м
Про надійність: Це дуже надійно. Сервер не завантажується, розмір індексу нормальний, запити швидкі
Про швидкість: Звичайно, це не так швидко, як локальне зберігання файлів, можливо на 10% повільніше, але досить швидко, щоб використовувати його в режимі реального часу, навіть коли зображення потрібно обробити, що в нашому випадку дуже залежить від php. Також скорочено час обслуговування та розробки: видалити одне або кілька зображень стало настільки просто: просто запитайте db за допомогою простої команди видалення. Ще одна цікава річ: коли ми перезавантажили наш старий сервер із локальним сховищем файлів (тобто мільйон файлів у тисячах папок), він іноді зависає годинами, оскільки система виконувала перевірку цілісності файлів (це дійсно зайняло години ...). Ми більше не маємо цієї проблеми з сітками, наші зображення тепер зберігаються великими шматками mongodb (файли 2 Гб)
Отже ... на мій погляд ... Так, gridfs досить швидкий і надійний, щоб використовувати його для виробництва.