- PVSM.RU - https://www.pvsm.ru -
BaaS-платформы (Backend as a Service) сделали разработку и сопровождение backend'а для мобильных и веб-приложений достаточно простыми и предсказуемыми процессами. Одним из флагманов движения BaaS стала компания Parse, но в 2016 году она заявила о прекращении обслуживания клиентов с 2017 года.
В связи с закрытием их сервиса и отсутствием русскоязычных облачных BaaS, мы решили создать собственный аналог — Scorocode [1]. Об этом под катом.
Разработка серверной части — самый трудный и непредсказуемый этап создания приложения. Зачастую, при планировании разработки проекта, недооценивается необходимый объём ресурсов и время создания backend'а.
Одна из возможных причин — трата времени на выбор инструментария, базы данных, платформы, операционной системы и т.д. Поэтому реализация даже относительно простых проектов может сильно затянуться, что приведёт к увеличению расходов.
Другая причина заключается в ограниченности доступных команде ресурсов. Чаще всего разрабатывать backend приходится с помощью тех инструментов и технологий, которыми владеют члены команды. Процесс получается долгим, а само приложение — сложным и дорогим в сопровождении.
Долгое время ИТ-индустрия искала способы упрощения разработки backend'а. Многие компании создавали инструменты, облегчающие работу над частными аспектами разработки, но это только затрудняло процесс: разработчикам приходилось разбираться не только в конкретной СУБД или платформе, но и в дополнительных инструментах.
Всё изменилось в 2011 году, когда компания Parse [2]предложила новый подход к созданию backend'а на основе облачного сервиса. Он позволял решить две основные задачи:
Позднее были добавлены другие полезные функции, облегчающие создание backend'а и инструменты для решения рутинных задач.
Идея имела колоссальный успех. В середине 2012 года сервисом пользовалось 20 000 разработчиков, а ежемесячный прирост пользователей составлял 40%. Теперь этап разработки backend'а занимал дни, а не месяцы, и сэкономленные ресурсы можно было направить на разработку и совершенствование frontend'а.
Использование BaaS позволило точнее оценивать сроки разработки и необходимые ресурсы. Сам процесс создания backend'а стал более формализованным, позволяя для разных платформ использовать единую серверную часть, упростилось сопровождение проекта, расходы снизились и стали более прогнозируемы.
Три года назад Facebook приобрёл Parse [3], и в конце 2015 года социальная сеть решила использовать мощности BaaS монопольно. Все остальные разработчики должны в течение 2016 года мигрировать на другие ресурсы.
Это событие совпало по времени с началом разработки нашей собственной BaaS-платформы. Изначально мы хотели создать сервис, сразу предоставив пользователям как базовую функциональность аналогичных платформ, так и большое количество новых уникальных функций. В результате мы сделали небольшой пивот, и в качестве отправной точки для Scorocode приняли базовую функциональность Parse с возможностью миграции данных из него в наше облако.
Scorocode — горизонтально масштабируемая система, построенная на принципах кластеризации. Кластеры разделяются по типам: API, СУБД, файлы, статистика. Каждый кластер API, работающий с конечными приложениями, выдерживает нагрузку около 25 тысяч запросов в секунду. С ростом нагрузки количество кластеров наращивается.
Немного о платформах и языках, используемых нами в разработке.
Основная СУБД в Scorocode — MongoDB, в качестве in-memory database используется Redis, а сервер очередей работает под управлением RabbitMQ. Высокопроизводительный API написан «с нуля» на Go. Язык был выбран нами после серии экспериментов с Node.js и С++. Google в последнее время очень активно развивает Go, писать на нём комфортно, код получается компактным, а производительность на уровне С++. Множественные микросервисы платформы тоже разработаны на Go.
Scorocode позволяет исполнять два варианта серверного кода:
Чем мы отличаемся от конкурентов?
На данный момент у нас действует три тарифных плана [4]:
С платформой Scorocode можно дополнительно сократить затраты на обслуживание приложений:
У нас оптимистичные планы по развитию Scorocode на четыре года вперёд. Инвестиции и поддержку нам оказывает группа компаний PROF-IT GROUP [5], которая в 2015 году вошла в рейтинг самых быстрорастущих IT-компаний [6] по версии Cnews.
Ближайшие планы развития:
Наш проект недавно стартовал и будет совершенствоваться под влиянием IT-сообщества. Мы готовы прислушиваться к пожеланиям разработчиков, расширять и пересматривать набор предоставляемых возможностей, находить разумный баланс в ценовой политике. Мы готовы к диалогу с пользователями и к конструктивной критике.
Приглашаем поделиться в комментариях своими пожеланиями и впечатлениями от использования Scorocode [1].
Мы будем регулярно вести блог с циклом статей про Scorocode: примеры его использования, наш опыт разработки платформы и особенности разработки приложений в целом. Будем рады видеть вас в подписчиках.
Автор: Scorocode
Источник [7]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/javascript/144644
Ссылки в тексте:
[1] Scorocode: https://scorocode.ru/
[2] Parse : http://parse.com/
[3] приобрёл Parse: https://techcrunch.com/2013/04/25/facebook-parse/
[4] три тарифных плана: https://scorocode.ru/#page4
[5] PROF-IT GROUP: http://prof-itgroup.ru/
[6] самых быстрорастущих IT-компаний: http://www.cnews.ru/reviews/2015/review_table/d3d4c70704e6cf0119d5b0c8fdea35ac7b1821a8/
[7] Источник: https://habrahabr.ru/post/303954/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best
Нажмите здесь для печати.