Все потоки
Поиск
Написать публикацию
Обновить
35.5

Микросервисы *

Микросервисная архитектура и все что с ней связано

Сначала показывать
Порог рейтинга
Уровень сложности

.NET Community Meetup 29/10

Время на прочтение4 мин
Количество просмотров2.2K
Были рады встретиться онлайн на .NET Community meetup 29 октября. Общались на тему дизайна и использования асинхронного Success/Failure-пайплайна в микросервисах и погрузились в историю языков программирования — что позаимствовали авторы C# у людей, про которых мы даже и не знаем?

Пропустили митап? Делимся записью и презентациями спикеров :)

Использовать время: зачем ВТБ новый кредитный конвейер на микросервисах

Время на прочтение5 мин
Количество просмотров8.3K

«Успешные люди вырываются вперёд, используя то время, которые остальные используют впустую», — говорил (так пишут в интернете) изобретатель конвейера Генри Форд. Как микросервисы и графовая платформа помогают экономить время в новом кредитном конвейере ВТБ, читайте под катом.

Читать далее

Подключение Yandex Database к serverless телеграм боту на Yandex Functions

Время на прочтение6 мин
Количество просмотров11K

Данная статья является продолжением вот этой статьи. В ней мы рассмотрели создание и настройку yandex cloud functions телеграм бота. А сегодня мы рассмотрим подключение телеграм бота к базе данных и сохранение какой-либо информации о пользователе, с которым общается бот.

В качестве базы данных мы будем использовать Yandex Cloud Database.

Читать далее

Зонтичная система мониторинга и ресурсно-сервисные модели в обновленном DX Operations Intelligence от Broadcom (ex. CA)

Время на прочтение13 мин
Количество просмотров5K
В этом сентябре Broadcom (бывшая CA) выпустила новую версию 20.2 своего решения DX Operations Intelligence (DX OI). На рынке этот продукт позиционируется как зонтичная система мониторинга. Система способна получать и объединять данные от систем мониторинга различных доменов (сеть, инфраструктура, приложения, базы данных) как CA так и сторонних производителей, в том числе, open source решений (Zabbix, Prometheus и других).



Основная функция DX OI — создание полноценной ресурсно-сервисной модели (РСМ) на базе конфигурационных единиц (КЕ), наполняющих инвентарную базу при интеграции со сторонними системами. В DX OI реализованы функции Machine Learning и Artificial Intelligence (ML и AI) над поступающими в платформу данными, что позволяет оценить/спрогнозировать вероятность отказа конкрентной КЕ и степень влияния отказа на бизнес-сервис, в основе которого лежит конкретная КЕ. Кроме того, DX OI — единая точкой сбора событий мониторинга и, соответственно, интеграции с системой Service Desk, что является неоспоримым преимуществом использования системы в единых центрах мониторинга дежурными сменами организаций. В этой статье мы расскажем подробнее о функционале системы и покажем интерфейсы пользователя и администратора.
Читать дальше →

Алгоритм Jerdella: решаем проблемы семантического безумия в IT-системах банков

Время на прочтение15 мин
Количество просмотров4.4K
Семантические проблемы в IT системах. Что бывает, когда много разных людей начинают творить

Есть ветхозаветная легенда о том, как люди в древнем городе Вавилон начали строить башню, но Всевышний перемешал им языки, и башня достроена не была. Еще бы, ведь башню строили сотни маленьких групп, которые в совокупности не понимали друг друга. А не понимая друг друга, невозможно взаимодействовать. Действительно, просто безумие – называть одну и туже вещь, подразумевая её одинаково, разными словами. И удивительного тут ничего нет.

Ветхозаветную легенду можно с легкостью перенести на современные крупные компании, внедряющие современные ИТ-решения. В пример таких компаний, вне всякого сомнения, можно отнести современные российкие банки, которые имеют десятки, а то и сотни бизнес-подразделений, в которых складывается своя субкультура общения, построенная на своих правилах и уникальном стиле делового оборота. Естественно, при формировании ИТ-инфрастурктуры учитывается устоявшийся в коллективе стиль именования бизнес-сущностей. За последние десять лет появилось множество работ на эту тему, например эта [1]. Те, кто сталкивался с аналитикой информационных систем в банках знают, что такое сделать так называемый «маппинг» данных, особенно, если конечные системы делали разные команды аналитиков, разработчиков и заказчиков или вендоров. Как правило, на 60% составление маппинга является уяснением сути и семантики передаваемых данных.

Читать дальше →

29 октября приглашаем на онлайн-митап Hot Java

Время на прочтение1 мин
Количество просмотров1.5K
Всем привет! Если вы занимаетесь разработкой на Java и хотите обсудить кейсы из практики ─ подключайтесь к новому онлайн-митапу Hot Java! Наши разработчики представят несколько докладов, поделятся опытом и ответят на вопросы. Участие бесплатное, а самые интересные вопросы мы по традиции отметим подарками. Ждем вас!

Читать дальше →

Go в продуктовой разработке: посмотрим с трех сторон

Время на прочтение9 мин
Количество просмотров8.2K
До Golang Live 2020 уже рукой подать. С 14 по 17 октября мы встречаемся на платформе Онтико. И даже в онлайн-формате, помимо традиционных докладов, будут интерактивные форматы: воркшопы, круглые столы, афтепати и другие штуки. Даже играть будем. В этом году мы сделали акцент на Go в продуктовой разработке и будем раскрывать эту тему с трех сторон: как справиться с проблемами Go в этой теме и какие есть тулзы, почему всё-таки стоит выбрать именно Go, и как после этого поддерживать продукт.


Читать дальше →

Как приручить событийно-ориентированные микросервисы

Время на прочтение7 мин
Количество просмотров13K
Как приручить событийно-ориентированные микросервисы

Современные микросервисные архитектуры являются событийно-ориентированными, реактивными и придерживаются хореографического подхода (в противовес к централизованному контролю через оркестратор), что позволяет им быть слабо связанными и легко изменяемыми, не так ли?


TL;DR: А вот и нет! Вы столкнетесь с препятствиями связанными с пониманием и управлением потоком событий.


В этой статье я просуммирую свой опыт работы с хореографией микросервисов и укажу на различные препятствия и последствия данного подхода. Я использую типичный пример из бизнеса — процесс “клиентской адаптации” (в зависимости от отрасли, вы могли слышать о нем как об открытии счета). Для представленной очереди событий ниже, я использую Apache Kafka, но не беспокойтесь если используете другой стек, для него будут применимы все те же понятия.

Читать дальше →

Обработка распределенных транзакций в микросервисной архитектуре

Время на прочтение7 мин
Количество просмотров52K
Привет, Хабр!

Сегодня мы предлагаем вашему вниманию небольшой материал о микросервисах и распределенной архитектуре. Он, в частности, затрагивает идею Мартина Фаулера о том, что новая система должна начинаться с монолита, а даже в развитой микросервисной архитектуре целесообразно оставлять большое монолитное ядро.

Приятного чтения!
Читать дальше →

Serverless телеграм бот с использованием Яндекс облака

Время на прочтение3 мин
Количество просмотров12K
Всем привет! Меня зовут Павлов Виктор, я являюсь практикантом-преподавателем информатики в одном из колледжей России. Так вот, для студентов мы стараемся внедрить в учебный процесс новейшие технологии и «Serverless» боты являются одним из таких направлений.

Эта статья навеяна популярностью ресурса среди студентов-программистов, но я постараюсь рассказать всё максимально просто для совсем начинающих программистов. В итоге создадим простого Эхо-бота, как заготовку для различных модификаций.

P.S. Также статья навеяна отсутствием туториала на языке Python, на Nodejs есть хороший туториал.

Ссылка на документацию Yandex Cloud Functions
Ссылка на документацию Telegram API.


Читать дальше →

Монорепозитории NX и Lerna, или Туда и обратно

Время на прочтение12 мин
Количество просмотров17K

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

В скриптах деплоймента (или в моем случае еще и в настройках GitLab репозитория), нужно сформировать токены/ключи доступов к докер реджистри, кубернетесу, разным кластерам и т.д. И если у вас пару сервисов, то это не проблема, но если сервисов 15-20, то это весьма болезненный процесс. Особенно, когда настройки кластера меняются и нужно эти изменения вносить во все репозитории.

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

После того как мы перешли на монорепозиторий появилось еще несколько преимуществ, без которых, в принципе, тоже можно жить, но все равно это был приятный бонус.

И вот мы решили использовать монорепозиторий, но с чего начать и как все организовать?

Поехали!

Как жить с ограничениями внешних API на количество запросов

Время на прочтение7 мин
Количество просмотров9.9K

Многие сервисы предоставляют возможность взаимодействовать с ними не только обычным пользователям через отточенные и оптимизированные графические интерфейсы, но и внешним разработчикам из своих программ через API. При этом сервисам важно контролировать нагрузку на свою инфраструктуру. В ситуации с обычными пользователями большинство проблем с нагрузкой не возникнет из-за контроля кода приложения, отправляющего запросы к сервису, со стороны разработчиков сервиса (пользователей, пытающихся что-то делать в приложении за рамками предложенных разработчиками интерфейсов и задокументированных возможностей мы в данной статье не рассматриваем). В случае со внешними разработчиками простор для создания нагрузки на сервис ограничен только фантазией этих самых внешних разработчиков. Чтобы немного ограничить этот простор, стала распространена практика введения ограничений на количество запросов в единицу времени к API сервиса. 

Мы уже рассказывали о том, как можно реализовать эти ограничения если вы сами разрабатываете API сервиса, сегодня хотим рассказать о том, как жить с «клиентской» стороны и удобно пользоваться ограниченным по количеству запросов API.

Читать далее

Meetup по архитектуре кастомной CI/CD системы WILDBERRIES на Go

Время на прочтение1 мин
Количество просмотров3.1K
Приветствую! 1 октября будет проходить наш очередной бесплатный онлайн-митап для Go-разработчиков и не только. Обсудим один из наших внутренних проектов — систему непрерывной интеграции и доставки на Go. Ниже указан список рассматриваемых вопросов и расписание мероприятия.

Ссылка на видеозапись прошедшего митапа тут


Читать дальше →

Ближайшие события

Как мы распилили монолит. Часть 2, Frame Manager

Время на прочтение6 мин
Количество просмотров9.1K
Привет, меня зовут Стас, я работаю в команде Тинькофф Бизнеса. В прошлой статье мой коллега Ваня рассказал, как у нас устроена архитектура приложений. Несколько раз Ваня упомянул некий Frame Manager, который служит оркестратором приложений, и сейчас я расскажу про него более подробно.

image
Читать дальше →

Что такое Vertx, и почему он подходит для РСХБ

Время на прочтение6 мин
Количество просмотров24K

Как известно, кто убьет дракона, тот сам становится драконом. Spring, как фреймворк общего назначения, был очень хорош на фоне java EE 10 лет назад. Но сейчас стал очень монструозным и тяжелым на подьем. Сегодня рассмотрим Vertx как фреймворк-основу для создания микросервисов.


Что такое Vertx?


Читать дальше →

Технология Apphost: альтернативная вселенная микросервисов в Яндексе

Время на прочтение6 мин
Количество просмотров22K

Когда-то поиск Яндекса представлял из себя бутерброд. Каждый его слой могли эффективно разрабатывать единицы людей. Однако верхний добавлял пикантности. Этот слой представлял из себя Apache с кучей Perl’овых модулей.

Поддерживать большой объём кода на стареющем языке программирования дорого и сложно, развивать — ещё дороже и сложнее. Так верхний слой Поиска оказался разделён на микросервисы, целую вселенную микросервисов. Как это обычно бывает, создавая что-то своё, мы получили нечто непохожее на всё, существующее снаружи.

Привет, Хабр. Меня зовут Святослав Фельдшеров. Я разрабатываю Apphost в поиске Яндекса. Добро пожаловать в нашу вселенную!

Подробнее про Apphost

Переход на микросервисную архитектуру

Время на прочтение6 мин
Количество просмотров8.4K


Вместо введения


Прошло уже несколько месяцев с момента запуска в продуктив первых микросервисов. И сейчас, на наш взгляд, самое время рассказать о полученном опыте.

Сразу стоит сделать оговорку, что будет в этой статье, а чего в статье не будет. В статье не будет описания архитектурных решений и описаний с обоснованием этих решений. Мы не будем фокусироваться и на стеке технологий, на котором мы создавали микросервисы.

Основное внимание в статье будет уделено тем глобальным проблемам, с которыми сталкивалась наша команда на протяжении всего проекта.

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

Вначале был монолит: как мы меняем нашу архитектуру, не мешая бизнесу

Время на прочтение15 мин
Количество просмотров9.1K


Всем привет! Меня зовут Игорь Наразин, я тим-лид команды в направлении логистики Delivery Club. Хочу рассказать, как мы строим и трансформируем нашу архитектуру и как это влияет на наши процессы в разработке.

Сейчас Delivery Club (как и весь рынок фудтеха) растёт очень быстро, что порождает огромное количество вызовов для технической команды, которые можно обобщить двумя самыми важными критериями:

  • Нужно обеспечивать высокую стабильность и доступность всех частей платформы.
  • Одновременно с этим держать высокий темп разработки новых фич.

Кажется, что эти две проблемы взаимоисключающие: мы либо трансформируем платформу, стараясь вносить новые изменения по минимуму, пока не закончим, либо быстро разрабатываем новые фичи без кардинальных изменений в системе.

Но нам удаётся (пока) и то, и другое. О том, как мы это делаем, и пойдет речь далее.
Читать дальше →

Что помогло нам быстро перестроиться на онлайн-торговлю в новых условиях

Время на прочтение11 мин
Количество просмотров3.3K

Привет!

Меня зовут Михаил, я заместитель директора по ИТ в компании «Спортмастер». Я хочу поделиться историей о том, как мы справились с трудностями, возникшими во время пандемии.

В первые дни новых реалий привычный формат офлайн-торговли «Спортмастера» замер, и нагрузка на наш онлайн-канал, в первую очередь в части доставки на адрес клиенту, возросла в 10 раз. За несколько недель мы трансформировали гигантский по объему офлайн-бизнес в онлайн, адаптировали сервис под потребности наших клиентов.

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

Читать далее

Подсказки по микросервисной автоматизации процессов

Время на прочтение12 мин
Количество просмотров18K

Camunda Microservice Workflow Automation 1


Возможно, ваша компания захочет перейти на архитектуру микросервисов и автоматизировать рабочие процессы (в этом посте блога я не вдаюсь в мотивацию, но вы, возможно, захотите прочитать о 5 Workflow Automation Use Cases You Might Not Have Considered или BizDevOps — the true value proposition of workflow engines). Это ставит вас в ряд со многими нашими клиентами. Как правило, у вас возникнут вопросы:


  • Область применения и границы — какой рабочий процесс вы хотите автоматизировать и как он ложится на несколько микроуслуг, или разраниченный контекст в вашем ландшафте. Я ограничен объемом этого поста, поэтому я не затрону эту тему сегодня, но вы, возможно, захотите прочитать Avoiding the «BPM monolith» when using bounded contexts или Real-Life BPMN.
  • Стек и инструменты — какой движок процессов я могу использовать?
  • Архитектура — я запускаю движок процесса централизованно или децентрализованно?
  • Управление — кто владельцы модели рабочего процесса и как ее развертывать?
  • Операции — как мне сохранить контроль?
Читать дальше →