Рубрика «rest»

Адский эксперимент: личный сайт на нищих микросервисах - 1

Микросервисы тут, микросервисы там… Из каждого утюга доносится дивный сказ про прекрасный мир микросервисов. А ведь это всего лишь один вид из десятка архитектурных стилей, который имеет свои достоинства и недостатки.

Читать полностью »

В мире веб‑разработки просто написать «Hello, world» уже мало – сегодня требуется создавать масштабируемые приложения, которые удобно поддерживать, легко расширять, с ними приятно работать пользователям и не нервничают DevOps‑команды. Давайте пройдёмся по всем этапам создания веб‑проекта — от архитектуры и API до деплоя, мониторинга и SEO. Статья длинная и подробная; вооружайтесь чайником, а лучше – редактором кода, потому что будет много примеров.

1. Архитектура: монолит или микросервисы?

Начиная новый проект, стоит сразу определить структуру: монолит или микросервисная архитектура.

Читать полностью »

Как проектировать качественные API - 1

Основная часть работы современных разработчиков ПО1 связана с API: публичными интерфейсами для общения с программой, например, API Twilio. Я потратил кучуЧитать полностью »

Вступление

В 2024 году я начал изучать Spring AOP и решил проверять знания на практике - создал экспериментальный проект.

Идея была простой: что-то уникальное и реально полезное. На Java почти нет современных библиотек для интеграции с Python. Py4J и Jython либо ограничены, либо устарели, а полноценной интеграции с Spring Boot не было.

Так я решил создать библиотеку для связки Java и Python. Первоначально это был эксперимент с AOP и динамическим кодом, но в итоге проект вырос в полноценную open-source библиотеку, которую можно подключить одной зависимостью.

Начало эксперимента: изучение AOP в Spring Boot

Читать полностью »

Такие разборы задач отлично помогают потренироваться в подходах к решению рабочих задач + увеличить насмотренность.

Задача

Сценарий:  

У нас есть e-commerce платформа, состоящая из:

  • веб-приложения,

  • брокера сообщений,

  • бэкенда.

Клиенты могут заказывать товары, а складская система проверяет наличие товаров на складе.  

Каждый раз, когда клиент делает заказ, система отправляет запрос через брокер для проверки доступности товара на складе и блокирует его на время обработки заказа.

Проблема:  

Клиенты могут:

Практика — лучший способ глубокого понимания теории. Рассмотрим на примере, как работают веб-сервисы с протоколом SOAP, для чего нужен WSDL и как он связан с XML-документом в теле POST-запроса.

Для изучения работы веб-сервисов на основе протокола SOAP 1.1:

  • разработаем клиентскую и серверную части веб-приложения на Python

  • проанализируем структуру WSDL 1.1 (Web Services Description Language) описания веб-сервиса, сгенерированную серверной частью

  • создадим пользовательское пространство имен в формате XSD (XML Schema Definition)

  • проведем тестирование приложения с помощью Postman

SOAP, REST и немного теории.

Читать полностью »

В жизни каждого системного аналитика наступает момент, когда он открывает две вкладки: слева – Swagger с контрактом системы А, справа – Confluence с контрактом системы Б. Между ними – пустая Excel-таблица, либо ещё одна вкладка Confluence. Задача – простая, как мир: смаппить поля.

И начинается знакомый ритуал: скопировать атрибут из одного места, вставить в другое. Ctrl+C → Ctrl+V, снова и снова. Одно неверное движение или опечатка — и через пару дней от разработчика прилетит таск с комментарием «маппинг не работает, проверь пути».

Читать полностью »

Эпизод 1: «Скобка, паб и виски с валидацией» - 1

KafkaRail гудел на фоне.

Читать полностью »

Если, когда вы смотрите на NEST.js вас гнетёт необъяснимая тоска. Если вы не можете понять воодушевления и радости от использования декораторов. Если рассмотрение очередного NEST-инструмента вызывает лёгкое недоумение — не стесняйтесь, вы не одиноки.

Читать полностью »

Привет! Меня зовут Максим Соколов, я — аналитик в команде “Управление доступностью товаров и категорий”. В нашей команде была выделена отдельная подгруппа, которая создавалась специально под новый продукт-фичу для селлеров. Сразу стало понятно, что для реализации нового функционала требуется разработка нового микросервиса. Командой разработки было принято решение интегрироваться по gRPC, но мне до конца не было понятно, почему выбор именно такой. И тут я решил разобраться подробнее!

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js