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

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

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

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

Пример микросервисной архитектуры с Saga на MassTransit

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

Привет, Хабр! В общем работаю я значит Архитектором Программных Решений. Мы тут монолиты на микросервисы переводим поэтому я решил для наших разработчиков написать пример проекта с сагой и за одно может оно и вам понадобиться поэтому выложил сюда. Статья будет дополняться по мере поступления вопросов от вас и от наших разработчиков

Читать далее

Деплой — это лава! Как Managed Kubernetes помогает бизнесу тушить пожары

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

Новое время потребовало от бизнеса искать новые решения, чтобы отвечать на запросы клиентов и предвосхищать ожидания от сервиса. Повсеместная монолитная архитектура не отвечала запросам, связанным с быстрым масштабированием проектов. Кроме этого, компоненты монолита при «выгорании» часто нарушали работу всего сервиса.
Читать дальше →

Зачем компаниям API Management

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

Привет, Хабр! Мы – Ярослав Насонов и Надежда Колезнева – развиваем витрину для внешних API в МТС. Сегодня обсудим тему управления API в корпорации. Поделимся опытом внедрения API-менеджмента в МТС, расскажем, что уже сделали, сколько потратили времени, с какими ошибками столкнулись, и зачем все это вообще нужно.

Эта статья будет интересна всем, кто задумывается о централизации IT-сервисов в своей компании, не знает с чего начать внедрение API-менеджмента в компанию, и поможет ответить на вопрос – а нужно ли вообще это внедрение у себя?

Чтобы сделать статью полезной, мы побеседовали с главным по API-менеджменту в МТС – руководителем платформы ЦФК Алексеем Неботовым.

Читать далее

GraphQL-gRPC API Gateway на Java

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

В данной статье я хочу рассказать про процесс создания концепта API Gateway для обеспечения взаимодействия фронтенда, использующего GraphQL, и бэкенда, использующего gRPC, на Java с использованием фреймворка Quarkus.

Читать далее

Platform V DataSpace: пишем код на Java при помощи удобного SDK

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

Привет, Хабр! Продолжаем рассказывать, как быстро и просто создавать микросервисные приложения. В прошлой статье мы написали frontend с помощью Platform V DataSpace. В примере был использован TypeScript, но, как мы и говорили, это необязательное требование.

Теперь рассмотрим, как разрабатывать backend-приложения на языке Java с помощью сервиса Platform V Functions и инструмента DataSpace SDK.

Platform V Functions — это FaaS-решение, позволяющее загружать исходный код сервиса в виде функции в OpenShift/k8s без создания docker-образов и настройки окружения.

Но основное внимание в статье уделим даже не Functions, а DataSpace SDK. Это инструмент для удобного взаимодействия с DataSpace по протоколу JSON-RPC. По ходу статьи мы рассмотрим основные фичи, которые DataSpace SDK предоставляет Java-разработчику.

Читать далее

Разработка архитектуры для чайников. Часть 3

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

Event system architecture (EDA)

Ещё одна из популярных архитектур — Event system architecture (EDA), что в переводе на русский означает “архитектура на основе событий”. Суть данной архитектуры состоит в том, что приложение работает с событиями (эвентами), которые генерируются пользователем или другими системами.

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

Читать далее

Docker Swarm для самых маленьких

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

Данная статья посвящена настройке и работе с Docker Swarm.

Swarm это стандартный оркестратор для docker контейнеров, доступный из «коробки», если у вас установлен сам docker.

Что нам потребуется для освоения:

Читать далее

CROC&TALK. Как создавать распределенные системы с Kubernetes и без

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

Хабр, привет!
28 апреля в 18:00 собираем онлайн-митап о создании систем по разные стороны Kubernetes. Да, уже многие поиграли с ним в песочнице и используют в dev и prod средах, но чем глубже погружаешься, тем больше вопросов возникает.

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

Читать далее

Объяснение микрофронтендов

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

Я написал данный пост, так как чувствую, что Микрофронтенды это стало не просто модное слово, они уже начали распространятся на большие проекты.

Микрофронтенды могут быть следующей важной вехой в фронтенд разработке.

Давайте я вам расскажу почему!

Читать далее

Тестировало тестирование тестировщика, или Как мы используем и тестируем распределенную систему тестирования

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

Привет, Хабр!

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

Но что, если обновлений насчитывается 250+ типов? А если поддерживаемых ОС — порядка 250? И для тестирования требуется 7500+ тестовых машин? Такой вот типичный хайлоад. Который должен постоянно масштабироваться…

Я — Иван Лауре, менеджер по тестированию в «Лаборатории Касперского». Именно так, как я описал выше, выстроено «выкатывание» у нас. В этой статье я расскажу о центральной части всего процесса — как мы тестируем обновления для более чем 500 уникальных версий ПО, да и саму распределенную систему тестирования. Не сомневаюсь, что наш опыт будет вам полезен.

Читать далее

«ПРО//ЧТЕНИЕ»: новый тест Тьюринга экспертов ЕГЭ?

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

Введение


Бывает, что вам хочется прыгнуть выше головы? С нами такое случается…


Время от времени в мире анализа данных проходят конкурсы с большими денежными призами. В 2006 году компания Netflix объявила о соревновании на миллион долларов по предсказанию оценок фильмов пользователями на основе их предпочтений. В 2019 году AWS, Facebook, Microsoft и другие компании объявили о конкурсе по распознаванию дипфейков Deepfake Detection Challenge с призом в $500,000 за первое место. Да и вообще такие многобюджетные конкурсы проводятся всё чаще и чаще, как видно в таблице ниже. В начале 2020 года в России стартовал конкурс «ПРО//ЧТЕНИЕ», не уступающий этим соревнованиям ни по масштабам, ни по амбициозности задачи. Организаторы конкурса «ПРО//ЧТЕНИЕ» предлагают разработать систему, проверяющую сочинения ЕГЭ по пяти школьным предметам. Общий призовой фонд конкурса составляет 260 млн руб., что с лёгкостью обгоняет описанные выше конкурсы. Участвовать может каждый, и окончательные итоги пока не подведены.


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

Как сжать fastText, или Приключение на 20 минут

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

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


Всё выглядело как приключение, после которого остались настолько тёплые воспоминания, что захотелось ими поделиться. Проникнитесь и вы духом приключения, желанием разгадывать загадки и чувством восстановленной справедливости!


И как говорил известный персонаж: «Давай, вошли и вышли, приключение на 20 минут».



Кадр из сериала «Рик и Морти» (англ. Rick and Morty), 3-й сезон, 6-я серия, Adult Swim, 2017 год


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

Разработка архитектуры для чайников. Часть 2

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

Monolite or MicroService ?

Программисты последнее время часто работают с микросервисами и часто пытаются их встроить туда, куда это не нужно. Микросервисы это естественно хорошо, но как и всегда это не серебряная пуля которая может решить любые проблемы, а скорее наоборот их добавит.

Давайте для начала разберём что такое монолит и его преимущества и недостатки.

Читать далее

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

SNS и SQS: разбираемся, какие есть способы обмена сообщениями в облаках

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

Привет, Хабр! Сегодня поговорим о принципах асинхронной работы с сообщениями и их очередями в распределенной и бессерверной архитектуре. У Amazon для этого есть веб-сервисы Simple Notification Service (SNS) и Simple Queue Service (SQS): они позволяют обмениваться сообщениями между микросервисами. В этой статье разберём, чем они отличаются, что могут и какие есть ещё предложения на этом рынке.

Читать далее

Разработка архитектуры для чайников. Часть 1

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

Всем привет. Меня зовут Тетка Андрей, я занимаюсь программированием уже больше 10 лет и за это время несколько раз приходилось разрабатывать архитектуру как крупных проектов, так и не больших фич. Я когда то уже делал вебинар на эту тему, но сейчас хотелось бы всё систематизировать и рассказать об этом вам.

И прежде чем мы начнем проектировать архитектуру, давайте сначала ответим на вопрос, а что же собственно такое архитектура?

Читать далее

Межкластерная репликация Apache Kafka между тремя дата-центрами

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

Я Роман Ананьев, NoSQL/Kafka-инженер в Авито. В этом материале расскажу, как мы попробовали использовать брокер сообщений Apache Kafka в трёх дата-центрах и что из этого получилось.

Сначала пробегусь по архитектуре Kafka, потому что она играет роль в репликации между кластерами. Затем коснусь самих способов репликации и расскажу о двух инструментах для неё: MirrorMaker и uReplicator. Основная часть статьи — про нашу реализацию Kafka cluster federation и то, как Kafka размазана на несколько дата-центров.

Читать далее

Интеграционное тестирование микросервисов Spring Boot в монорепозитории

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

Привет, Хабр! С ростом количества микросервисов и их взаимосвязей может возникнуть потребность комплексной проверки работоспособности системы. Со временем API сервисов и их поведение может дорабатываться и изменяться, при этом хочется иметь уверенность, что система микросервисов в совокупности ведёт себя согласно ожиданиям. Мы разберём простой пример написания интеграционных тестов, которые в дальнейшем можно встроить в CI/CD-процесс для решения подобной проблемы.

Читать далее

Security микросервисов с помощью Spring, OAuth2, JWT и Service Account

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

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

Читать далее

Паттерны асинхронных обменов на платформе Авито

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

Привет! Меня зовут Павел Агалецкий, я старший инженер в команде архитектуры. Одна из областей ответственности нашей команды — синхронное (RPC) и асинхронное взаимодействие между сервисами. 

В этой статье я расскажу о том, как можно связать сервисы друг с другом и как это делаем мы в платформе Авито. 

Читать далее

Гайд по поиску и устранению утечек памяти в Go сервисах

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

Привет меня зовут Игорь и я профессионально занимаюсь веб разработкой с 2005 года, раньше это называлось "веб-мастер", а сейчас full-stack developer.

На данный момент я tech lead в одной классной команде и иногда мне приходиться писать много текста в confluense, что бы не объяснять всё дважды и заодно приумножить knowledge base компании. Этот гайд мои "заметки на полях" в ходе исследования одного инцидента.

Читать далее