Jump to content

Кокаин (PaaS)

Кокаин
Разработчик(и) Андрей Сибирёв и Яндекса команда
Первоначальный выпуск 20 марта 2011 г .; 13 лет назад ( 20 марта 2011 )
Стабильная версия
0.12.14.21 / 29 ноября 2017 г .; 6 лет назад ( 29.11.2017 )
Написано в С++
Тип Веб-разработка
Веб-сайт github /кокаин

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

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

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

Архитектура

[ редактировать ]

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

Применение технологии

[ редактировать ]

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

  1. ^ "кокаин-документы" . Проверено 8 мая 2017 г.
  2. ^ «Большой старт» . Проверено 8 мая 2017 г.
  3. ^ «Официальная документация Яндекса» . Архивировано из оригинала 19 февраля 2014 г. Проверено 25 февраля 2014 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: b58a0240e1b830992889b51c576aec7e__1717664880
URL1:https://arc.ask3.ru/arc/aa/b5/7e/b58a0240e1b830992889b51c576aec7e.html
Заголовок, (Title) документа по адресу, URL1:
Cocaine (PaaS) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)