Интеграция с Cloud Storage

Cloud Storage

Каждый, кто когда-либо имел дело с веб-приложениями и сайтами, знает, какую головную боль представляет работа с файлами: их загрузка, хранение, отдача пользователям.

Создателям сайтов, например, часто приходится сталкиваться с такими проблемами, как нехватка дискового пространства для хранения больших объемов статичного контента, обеспечение безопасности хранения и разграничение доступа, резервное копирование и восстановление данных.

Посетители веб-сайтов, в свою очередь, испытывают серьезные неудобства из-за слишком долгой загрузки страниц, содержащих «тяжелые» элементы (графику, анимацию, видео и т. п.). Во многих браузерах имеется ограничение на количество одновременных подключений (например, Internet Explorer позволяет осуществлять только три одновременных запроса к домену). Если веб-страница содержит много изображений, все эти изображения будут загружаться последовательно в течение очень долгого времени. Практика показывает: если загрузка страницы длится более 4 секунд, пользователь эту страницу покидает. Для веб-проектов это означает потерю аудитории, а во многих случаях — еще и недополученную прибыль.

Чтобы решить описанные проблемы, разработчики CMS все чаще идут на такой шаг, как интеграция собственных продуктов с облачными хранилищами. Преимущества этого решения очевидны:

  • хранение больших объемов данных в «облаках» обходится дешевле по сравнению с традиционным хранением;
  • использование «облаков» позволяет эффективно решить проблему доступности данных: неполадки в работе облачных сервисов случаются значительно реже, чем падения традиционных серверов;
  • при смене хостинг-провайдера отпадает необходимость переноса большого количества файлов вручную;
  • благодаря использованию сетей доставки контента (CDN) скорость доставки файлов пользователям существенно увеличивается;
  • так как пользователи скачивают файлы не с сайта, а через CDN, нагрузка на серверы снижается;
  • провайдеры облачных услуг гарантируют сохранность данных клиентов: так, в нашем хранилище все загружаемые данные одновременно копируется на несколько независимых серверов, а недостающие данные восстанавливаются автоматически.

Интеграция облачных хранилищ с системами управления сайтами является одной из актуальных тенденций сегодняшнего дня. Клиенты высоко оценивают преимущества нашего сервиса: так, один из них даже написал собственный плагин для подключения хранилища Selectel к LiveStreet CMS.

Количество CMS, способных интегрироваться с нашим хранилищем, постоянно растет. Теперь размещать собственные файлы в хранилище Selectel могут пользователи CMS 1C-Битрикс и сервиса Uploadcare.

Подключение к 1С-Битрикс

Компания 1С-Битрикс уже давно ведет работу по интеграции своего продукта с облачными хранилищами. Начиная с 11 версии, вышедшей в свет два года назад, в CMS 1C-Битрикс присутствует возможность подключения облачных сервисов для хранения статичного контента. Последние версии продукта поддерживают и наше хранилище.

Чтобы подключить облачное хранилище Selectel к CMS 1C-Битрикс, тем, кто еще не является нашим клиентом, нужно прежде всего зарегистрироваться на сайте http://selectel.ru и получить логин и пароль. Затем выбираем в главном меню панели администрирования 1С-Битрикс пункт «Настройки» → «Облачные хранилища». На экране появится список поддерживаемых сервисов:

добавить облачное хранилище

Теперь нажимаем на кнопку «Добавить», расположенную над списком. Откроется окно настройки параметров подключения и использования облачного хранилища. В выпадающем списке провайдеров выбираем Selectel:

Selectel

После этого окно настроек будет выглядеть так:

подключение к облачному хранилищу

В поле «Имя сервера (API host)» нужно ввести auth.selcdn.ru, в поле «Имя пользователя (API user)» введите логин (номер договора), полученный при регистрации, в поле «Ключ доступа (API key)» – пароль, который можно узнать в разделе панели управления «Облачное хранилище» → «Настройка доступа». 1С-Битрикс сама создает контейнер в облачном хранилище.

Заметим, что такая реализация представляется нам не совсем понятной и удобной: почему для хранения файлов нельзя использовать уже имеющиеся контейнеры? Вполне можно допустить, например, что файлы, ранее помещенные в «облако», могут понадобиться при работе над новым веб-проектом. Между тем при попытке подключить уже созданные контейнеры система выдает сообщение об ошибке.

По умолчанию вновь созданному контейнеру присваивается сгенерированное программой имя, представляющее собой трудночитаемое сочетание букв и цифр. Его можно легко заменить на любое другое: для этого достаточно просто отредактировать содержимое поля Контейнер.

Как только все настройки введены, нажимаем на кнопку Сохранить. В облачном хранилище Selectel будет создан контейнер, куда будут автоматически помещаться файлы, загружаемые через CMS 1C-Битрикс.

Подключение к Uploadcare

Uploadcare — это сервис, предназначенный для разработчиков веб-приложений и сайтов. Он обрабатывает и хранит в облаках используемые в веб-проекте медиафайлы, а также раздает их пользователям через CDN. Сервис обеспечивает целостность и сохранность данных в том числе и за счет резервного копирования в облачные хранилища. С недавних пор Uploadcare поддерживает в том числе и облачное хранилище Selectel. Это нововведение должно заинтересовать прежде всего российских пользователей: при высоком уровне надежности и функциональности хранение данных у нас обходится существенно дешевле по сравнению с аналогичными зарубежными сервисами.

Для хранения резервных копий Uploadcare нужно создать в облачном хранилище Selectel отдельный контейнер:

создание облачного хранилища Selectel

Затем нужно создать дополнительного пользователя, который будет иметь доступ только к контейнеру с резервными копиями Uploadcare:

доступ к облачному контейнеру

облачный контейнер

После этого входим в Uploadcare под своей учетной записью и открываем главное меню:

вход в Uploadcare

Выбираем пункт Backup:

Backup

Uploadcare предложит выбрать одно из двух облачных хранилищ (Amazon S3 и Selectel) для помещения резервных копий. Выбираем, естественно, Selectel:

выбор облачного хранилища

В открывшуюся форму вводим имя пользователя (того самого, что был создан для работы с данными Uploadcare), пароль, а также имя контейнера, в котором будут храниться резервные копии. После этого нажимаем на кнопку Connect:

резервные копии

На экране появится сообщение об успешном подключении облачного хранилища Selectel:

подключение облачного хранилища Selectel

Что дальше?

Как уже было сказано выше, интеграция CMS с облачными сервисами – тенденция очень и очень перспективная. Наше облачное хранилище в принципе может быть подключено к любым CMS, поддерживающим протокол Openstack Swift либо Amazon S3. В связи с этим мы хотели бы обратиться к нашим читателям, многие из которых уже являются нашими клиентами, с вопросом: какие CMS вы бы хотели интегрировать с нашим облачным хранилищем?

Тех, кто еще не является нашим клиентом, мы приглашаем протестировать наш облачный сервис. Чтобы просто ознакомиться с возможностями нашего облачного хранилища, вам не нужно ничего платить: каждый вновь зарегистрировавшийся пользователь получает на счет 10 рублей. Для полноценного тестирования этой суммы более чем достаточно.