Blog Posts

Готовим микросервисы в Docker на Spring Boot + Rest + Kafka + MongoDB

Сегодня мы приготовим два микросервиса на Spring Boot и развернем их в Docker. Про то что такое Docker написано здесь. Один микросервис будет отвечать за получение данных из вне и записывать их в нужном виде в Kafka. Про то как локально настроить у себя на компьютере Apache Kafka написано здесь. Второй микросервис будет считывать данные из Kafka и сохранять их в MongoDB
Продолжение

Перечисления в Java и подозрительный метод values()

Перечисление (Enumeration) в Java представляют собой класс, состоящий из констант. Появились в языке для удобной реализации перечисляемых типов данных. Например, светофор имеет три цвета: красный, желтый и зеленый. Вместо того, чтобы создавать отдельный статический класс с константами типа Color, у которых есть поле name в которое уже записано имя цвета. [crayon-5f9053b9b6495407773417/] Конструкция получилась очень неудобной. Ко всему прочему при такой реализации вы можете создать экземпляр класса TrafficLight, а это противоречит понятию перечисляемых типов. Давайте перепишем TrafficLight с помощью перечисляемых классов и

Продолжение

Apache Kafka. Быстрый старт на MacOS

Apache Kafka – это один из самых популярных брокеров сообщений на рынке IT. Когда-то был разработан LinkedIn для своих внутренних нужд, позже был передан в OpenSource. В настоящее время главным мэинтейнером Apache Kafka является компания Confluent. Думаю на истории можно остановиться. Подробнее о Apache Kafka можно почитать здесь https://kafka.apache.org. Какую проблему решает? С одной стороны, когда мы имеем один источник данных и одного потребителя данных, то Kafka и другие брокеры сообщений нам вообще ни к чему. Примерно выглядит это вот так: С

Продолжение

Еще одна статья о DI в Spring Boot

Как сказал один мудрец: вечно смотреть можно на три вещи: как течет вода, как горит огонь и как кто-то пишет очередную стать о DI в Spring Boot. Сегодня я сделаю попытку коротко описать всю эту петрушку. DI (Dependency Injection, внедрение зависимости) – процесс при котором построение одного объекта, предоставляется внешнему объекту. Или точнее это то место, где зависимость будет внедрена другим объектом. Понятнее будет на примере. Пусть у нас есть класс “Автомобиль” у него есть поле класса “Двигатель”. Место где

Продолжение

Docker. Создание контейнера с базой данных Oracle

Что такое Docker и зачем он нужен? Docker – это специализированный контейнер, расположенный в среде виртуализации, предназначенный для “упаковки” в него приложения со всем его окружением и зависимостями. В настоящее время активно внедряется и успешно используется многими компаниями. Если раньше при разработке, развертывании и тестировании приложений использовались виртуальные машины с установленными на них операционными системами, то благодаря Doсker-контейнерам виртуализация получила новый виток развития. По сравнению с традиционным методом создания окружения (виртуальные машины), docker имеет ряд преимуществ: Потребление меньшего количества ресурсов

Продолжение