Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Cocaine (Configurable Omnipotent Custom Applications Integrated Network Engine) - это система PaaS с открытым исходным кодом для создания пользовательских приложений облачного хостинга, похожих на Bluemix , Google App Engine или Heroku . Таким образом уже реализовано несколько сервисов, включая сервис для определения региона или языка пользователя, сервис для доступа к хранилищу MongoDB и сборщик URL. [1]

История [ править ]

Андрей Сибирёв, оригинальный разработчик Cocaine, позаимствовал идею у Heroku , еще одной облачной платформы как услуги . В то время Heroku поддерживала только приложения, разработанные на Ruby . [2] Используя Heroku, разработчик мог создать приложение Ruby и отправить его в облако, в то время как Heroku решал проблемы с инфраструктурой и балансировкой нагрузки. Однако Сибирёва не устроила документация для Heroku, поэтому он решил создать собственное решение PaaS.

Изначально «Кокаин» был личным проектом Сибирьёва. Однако все изменилось, когда Яндекс обнаружил внутреннюю потребность в масштабируемой платформе, способной обрабатывать миллионы запросов в секунду (RPS). Этим целям служил кокаин. Теперь кокаин используется в инфраструктуре Яндекса . [3]

Архитектура [ править ]

Облако состоит из одной или нескольких независимых машин, на которых установлен сервер Cocaine (Cocained). Пользователи ничего не знают о местонахождении служб, к которым они обращаются - им доступны только адрес балансировщика нагрузки и имя приложения. Запросы пользователей отправляются на балансировщик нагрузки, который передает их в облако. В облаке для каждого запроса выбирается оптимальная машина, после чего запрос выполняется. Детали инфраструктуры и настройки среды приложения также скрыты от разработчика. Разработчику нужно только отправить код в облако и написать специальный манифест для выполнения кода. Нет необходимости настраивать что-либо еще, например базы данных, хранилища значений ключей или HTTP-клиентов. Есть сервисы, которые это делают, от программиста 'Elliptics storage, а служба Uatraits использует данные о пользовательском агенте клиента и его заголовках HTTP для определения характеристик устройства, отправившего запрос.

Применение технологии [ править ]

В облаке приложения можно писать на различных языках программирования ( C , C ++ , Go , JavaScript , Python , Ruby и др.) И фреймворках ( Node.js). Кокаин, привязанный к веб-серверу, обеспечивает автоматически масштабируемую среду развертывания для веб-приложений. Облако обрабатывает большие объемы информации благодаря интерфейсу потокового обмена данными. Cocaine реализует отказоустойчивую и высокопроизводительную передачу сообщений и событий по шине. Используя балансировщик нагрузки, пользователь может создавать системы, реагирующие на действия пользователя. Приложения в облаке запускаются независимо друг от друга. Это позволяет поддерживать несколько версий одного и того же приложения и настраивать «мягкую миграцию» для перехода пользователей к обновленным версиям продуктов. Приложения можно тестировать в облаке в изолированной среде. Таким образом, программные ошибки не повлияют на физическую систему или другие приложения.

См. Также [ править ]

  • Веб-сервисы Amazon
  • Jelastic
  • Машинный двор
  • Heroku
  • Force.com
  • Skytap
  • VMware
  • Rackspace Cloud
  • GoGrid
  • Windows Azure
  • OpenShift
  • Oracle Cloud

Ссылки [ править ]

  1. ^ "кокаин-документы" . Дата обращения 8 мая 2017 .
  2. ^ "Большой запуск" . Дата обращения 8 мая 2017 .
  3. ^ "Официальная документация Яндекса" . Архивировано из оригинала на 2014-02-19 . Проверено 25 февраля 2014 .

Внешние ссылки [ править ]

  • Cocaine PaaS (официальный сайт, в архиве), архивировано из оригинала 14.02.2015.
  • «Гигант поисковых систем Яндекс запускает кокаин» , TechCrunch , 2013-10-16.
  • «Русский Google Яндекс Free Cloud Service Cocaine» , The Guardian , 2013-10-17.
  • «Бесплатная раздача кокаина от российской поисковой системы Яндекс» , The Register , 2013-10-17.