Содержание

  • Gradle Build Tool
  • Миграция баз данных | Liquibase
  • Обзор проекта на Spring Security (Oauth2)
  • JSON Web Token | JWT
  • Основы Apache Kafka
  • Сбор метрик Spring Boot Actuator c помощью Prometheus и Grafana
  • EventListeners и Spring Logs
  • Spring Rest Repositories, RabbitMQ и New Relic
  • Интернационализация приложений

Gradle Build Tool

Gradle — это один из инструментов сборки, доступных для Java. Он использует предметно-ориентированный язык (Domain-Specific Language) на основе Groovy для разработки структуры проекта. Что отличает его от Maven, который использует XML для конфигурации своего проекта.

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

Gradle обеспечивает интеграцию с несколькими инструментами разработки и серверами: IntelliJ IDEA, Eclipse, Jenkins и Android Studio.

Некоторые преимущества Gradle заключаются в следующем:

  • Gradle позволяет нам писать сценарий сборки на Java.
  • Он прост в использовании и обслуживании.
  • Он поддерживает управление зависимостями.
  • Он обеспечивает высокую производительность и масштабируемость сборок.
  • Он поддерживает многопроектную структуру.
  • Легко перейти на Gradle из Maven или других инструментов сборки.


Миграция баз данных | Liquibase

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

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



Обзор проекта на Spring Security (Oauth2)

В видео будет разбор работы приложения с использованием Spring Security и Oauth2



JSON Web Token | JWT

Многие приложения используют веб-токены JSON (JWT), для безопасной передаче информации между двумя сторонами. Его можно использовать для системы аутентификации, а также для обмена информацией.

Эту информацию можно проверить и ей можно доверять, поскольку она имеет цифровую подпись.



Основы Apache Kafka

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

LinkedIn разработал Kafka в 2011 году как высокопроизводительный брокер сообщений для собственного использования, затем открыл исходный код и передал Kafka компании Apache Software Foundation

У Кафки есть основные возможности:

  • Позволяет приложениям публиковать или подписываться на потоки данных или событий.
  • Сохраняет записи точно в том порядке, в котором они произошли. Отказоустойчивым и надежным способом.
  • Обрабатывает записи в режиме реального времени (по мере их возникновения).


Сбор метрик Spring Boot Actuator c помощью Prometheus и Grafana

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

Prometheus и Grafana предлагают мощное решение для мониторинга приложений Spring Boot. Prometheus собирает показатели и управляет оповещениями, а Grafana визуализирует матрицы и управляет оповещениями. Вместе они помогают обнаруживать и устранять проблемы до того, как они затронут пользователей.



EventListeners и Spring Logs

Паттерн EventListener (также известный как Observer, Listener или Publisher-Subscriber) - это шаблон проектирования, который позволяет объектам подписываться на события, происходящие в других объектах, и реагировать на них.

Суть этого паттерна заключается в создании двух объектов: издателя (Publisher) и подписчика (Subscriber). Издатель отвечает за генерацию событий и уведомление подписчиков о произошедшем событии, а подписчик реагирует на это событие, выполняя соответствующие действия.

Spring Logs - важный инструмент для отладки и мониторинга приложений. Они представляют собой записи событий и действий, которые происходят в приложении, и могут содержать информацию об ошибках, предупреждениях, информационных сообщениях и других событиях.



Spring Rest Repositories, RabbitMQ и New Relic



Интернационализация приложений

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