Облако IBM

Бессерверное программирование

Поделиться:

Программирование в бессерверных средах: новые возможности для разработчиков

Бессерверная архитектура является относительно новым подходом и поэтому требует некоторых пояснений. Три года назад этой предметной области вообще не существовало. С точки зрения разработчиков, бессерверные среды устраняют необходимость установки и управления серверной инфраструктурой для запуска приложений. Это, конечно, не означает, что серверы не задействованы – совсем наоборот. Однако программирование в бессерверных средах освобождает разработчиков от принятия различных решений по управлению серверами и распределению вычислительных мощностей.

Более того, раньше специалисты должны были знать, как настраивать конфигурацию множества различных сервисов и программных платформ, таких как Apache, Nginx, Postfix, PHP и т.д. Сейчас бессерверные технологии поддерживают обширный набор языков программирования, и разработчики выбирают тот, который лучше всего знают. Как результат – у специалистов больше времени для внедрения инновационных решений вместо управления серверами, на базе которых функционирует их программный код.

Скорость, простота и рентабельность

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

Одним из наиболее интересных примеров использования бессерверных решений является создание API, благодаря ускорению разработки таких интерфейсов. API – это программные посредники, которые позволяют двум приложениям взаимодействовать друг с другом. В бессерверных средах разработчики могут создавать API без необходимости управлять для этого какой-либо серверной частью. Например, разработчики пользовательских интерфейсов на JavaScript теперь могут создавать API намного быстрее, так как не нужно сосредотачиваться на работе операций нижнего уровня и разбираться в нескольких языках программирования.

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

И для стартапов, и для крупных предприятий

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

Разработчики из SiteSpirit являются отличным примером того, как архитектура бессерверной обработки данных помогает решать бизнес-задачи путем оптимизации рабочих процессов. SiteSpirit позволяет заказчикам создавать прекрасный маркетинговый материал на основе медиабиблиотеки как сервиса. В сферах услуг с высокой значимостью визуальной составляющей, таких как туризм или недвижимость, маркетологам необходим быстрый и легкий доступ к выразительным иллюстрациям для создания эффектных кампаний. Благодаря такому облачному сервису не нужно беспокоиться о хранении, тегировании, извлечении и обработке тысяч изображений. Теперь эти функции выполняются на бессерверной архитектуре, что снижает издержки.

Платформы с открытым кодом открывают доступ к инновациям

Тем не менее, есть и определенные проблемы, связанные с проприетарностью. Дело в том, что код, написанный и развернутый в облаке, в этот момент неразрывно связан с поставщиком облачных решений. Это означает, что приложения становятся оптимизированными для конкретной облачной среды, а замена облачного провайдера может привести к снижению производительности и скорости отклика приложения. Вот почему многие разработчики теперь ищут решения с открытым исходным кодом. Набор функций как сервиса IBM Cloud Functions создан на основе Apache OpenWhisk  – бессерверной платформы с открытым исходным кодом и предоставляющей доступ разработчикам ко всей экосистеме. При этом нужно понимать, что IBM Cloud Functions за счет облачной инфраструктуры обеспечивает обработку запросов в любых масштабах, а Apache OpenWhisk зависит от инфраструктуры и серверов на которых запущен.

Есть и другие инструменты с открытым исходным кодом для бессерверного программирования, например, IBM Composer который работает в паре с OpenWhisk и помогает осуществлять оркестрацию функций бессерверной обработки данных. Это позволяет специалистам быстро создавать и масштабировать приложения в виде набора координируемых функций, уделяя больше времени внедрению инноваций и меньше – настройке инфраструктуры. Использование оркестрации крайне важно для оптимизации времени на программирование и создание прорывных технологий в сфере облачных вычислений.

Бессерверные решения: в интересах сообщества разработчиков

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

 

Эксперт: Джеймс Томас (James Thomas), разработчик IBM

Добавить комментарий
Нет комментариев

Добавить комментарий

Your email address will not be published.Обязательные поля отмечены *

Больше Облако IBM Истории
By Джейсон Келли on 28/02/2020

Как токенизация и цифровизация активов помогут вернуть «мертвый капитал» в экономику

Трудно поспорить с тем, что сегодня мы уже живем в эпоху цифровой экономики. Мы используем приложения, чтобы отправлять деньги друзьям, оплачивать счета, покупать продукты и т. д. Но правда заключается в том, что многие сферы экономики по-прежнему тяжело поддаются цифровизации. Некоторые вещи сложнее оцифровать, чем другие – из-за принятых практик, числа участников, которые должны взаимодействовать […]

Читать далее

By Артём Носенко on 17/08/2021

Как Rambler&Co улучшил качество рекламных продуктов с помощью IBM Cloud

Rambler&Co – один из крупнейших медиахолдингов России. В него входят такие активы, как «Лента.ру», «Газета.Ru», «Чемпионат», «Секрет фирмы», портал «Рамблер», WMJ.ru, Motor.ru, LiveJournal и ряд других активов. Для того чтобы эффективно монетизировать все эти сервисы, команда AdTech разработала собственную реализацию RTB (Real Time Bidding – торги в реальном времени) – алгоритмическую закупку рекламы, когда множественные […]

Читать далее

By Иштван Погл on 17/06/2020

О стратегической роли микросервисной платформы в ритейле

«М.Видео-Эльдорадо» – крупнейший в России розничный продавец бытовой техники и электроники, а также входит в топ-10 мировых ритейлеров в своём сегменте по итогам 2019 года. Вопреки вероятным стереотипам, ключ к лидерству в этой индустрии лежит в области технологий. Рынок, поведение покупателей, их ожидания очень быстро меняются, и ритейл-компания должна успевать быстро и эффективно адаптироваться. Одним […]

Читать далее