Развертывание Capistrano с большим количеством изображений - PullRequest
0 голосов
/ 01 апреля 2011

Итак, у нас есть базовый сайт Rails 3 с capistrano 2.5.19 и многоэтапным расширением.

Сайт прост, но на нем более 40 000 изображений. Поэтому развертывание занимает много времени, как на нашем сервере QA, так и на производстве. Проблема обычно не в загрузке сети, потому что capistrano загружает только то, что изменилось в SVN. Проблема заключается в том, сколько времени требуется нашим серверам для резервного копирования старого выпуска (изображения объемом 40 тыс.) И копирования нового выпуска (еще 40 тыс. Изображений).

Кто-нибудь знает лучший подход к этому? Является ли единственный способ разделить это на две папки SVN и два сценария развертывания в сочетании с магией символических ссылок? Или я могу сказать Capistrano исключить образы в определенных развертываниях, где я знаю, что образы не изменились?

Ответы [ 2 ]

1 голос
/ 12 ноября 2011

Ну, у нас тоже есть эта проблема.Решением является библиотека fast_remote_cache, если вы работаете в Linux.

https://github.com/37signals/fast_remote_cache

Идея состоит в том, что он жестко связывается с кешем, поэтому копирование выполняется намного быстрееКак только сайт, наконец, становится достаточно большим, что даже это занимает слишком много времени, тогда пришло время рассмотреть серверы ресурсов.

0 голосов
/ 01 апреля 2011

Вероятно, лучше не иметь все эти изображения в вашем хранилище или, по крайней мере, в другом хранилище.

Вы захотите узнать о настройке сервера активов. Их легко подключить к Rails , если вы используете помощников XXX_tag. И вы могли бы просто сделать так, чтобы на сервере активов работал старый старый Apache - не нужно ничего динамического на нем ...

Возможно, вы также сможете подключить «облачное» хранилище файлов (я думаю, Amazon S3 , но есть множество других) для того же - они обеспечат резервное копирование файлов (и контроль версий, в некоторых случаях), и вам даже не придется беспокоиться о том, чтобы запускать сервер ресурсов самостоятельно.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...