Войти через соцсеть:
Войти через email:
Как мы кодили no code - рецепты сервисов со свежим Редисом.
Опыт разработки продукта с масштабируемой архитектурой на примере Платформы ботов общения с клиентами с no-code конструктором сценариев и средой их исполнения.
Задача, вставшая перед командой - полный рефакторинг имеющихся сервисов ботов. Причины - настройки были доступны только разработчикам, и потребовалось повышение масштабируемости. Фактически требовалось в короткие сроки разработать масштабируемую no-code платформу с визуальным конструктором сценариев, работающую с голосовыми и текстовыми ботами различных бизнес-заказчиков одновременно, к тому же поддерживающую большой спектр внешних интеграций.
Краткий рассказ о получившейся Платформе - иллюстрация с точки зрения UX.
Короткий рассказ об активно используемом в проекте Redis stack - почему именно он и почему рекомендуется его актуальная версия, 7.2 и выше. В том числе новый уникальный функционал - поддержка локального кэша на стороне сервисов с оповещениями об инвалидации ключей, что значительно меняет возможные подходы к взаимодействию сервисов-воркеров.
На примере проектирования и разработки сервисов Платформы ботов будут показаны применявшиеся архитектурные рецепты, в том числе с использованием Redis. Для каждого применённого рецепта будет приведена постановка задачи с т.з. возможной пользы и здравого смысла, альтернативные варианты архитектуры и обоснован выбор того варианта, который был в результате реализован.
В том числе обосновывается выбор различных способов коммуникации между сервисами, от классики REST до асинхронной коммуникации без API через общее хранилище, а так же применение элементов паттернов API Gateway, canary deployment и других.
В результате последовательных шагов получится архитектурная схема с адаптерами внешних сервисов, Event driven воркерами, in-memory хранилищем состояний и Event sourcing сохранением результатов для мониторинга и аналитики. Небольшое количество примеров на Python, но сам рассказ от языков и фреймворков не зависит.