Java for Beginner
869 subscribers
1.01K photos
275 videos
14 files
1.69K links
Канал от новичков для новичков!
Изучайте Java вместе с нами!
Здесь мы обмениваемся опытом и постоянно изучаем что-то новое!

Наш YouTube канал - https://www.youtube.com/@Java_Beginner-Dev

Наш канал на RUTube - https://rutube.ru/channel/37896292/
Download Telegram
19. Read Model на событиях: выбор между JOIN, REST, Replica и CQRS

В этом видео я разбираю реальный вызов: бизнес хочет аналитику по жизненному циклу заказа – время создания, оплаты, отправки уведомления. Данные живут в трёх независимых микросервисах (Order, Payment, Notification) у двух из которых свои базы данных.

Как построить аналитику, не нарушая инкапсуляцию и не создавая синхронной связанности?

Я пройду через все популярные альтернативы:
🔹 SQL JOIN между базами – почему это антипаттерн
🔹REST-агрегация – почему не масштабируется
🔹Read Replica – почему не решает проблему агрегации
🔹CDC → ClickHouse – когда это оправдано, а когда избыточно
🔹CQRS + Event‑driven Read Model Projection – наш выбор и его цена

Я не просто показываю «как сделать CQRS», а объясняю процесс принятия решения: оцениваю стоимость, производительность, надёжность, сложность и поддерживаемость.

Что вы узнаете:
🔹Как отличить операционную аналитику от OLAP-хранилища
🔹Почему CQRS – это не «две базы данных», а принцип разделения команд и запросов
🔹Как строить идемпотентные проекции с помощью INSERT ... ON CONFLICT
🔹Как защитить read-модель от старых событий
🔹Как оценивать архитектурные альтернативы по таблице критериев

Исходный код проекта на GitHub наверняка заслуживает Ваших звезд! 🙂

Ссылка на Youtube
Ссылка на Рутьюб

Смотрите, ставьте лайки, подписывайтесь на каналы!✌️

Жду ваших реакций и оценок
🙂
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍2🤯1
🗓 История IT сегодня — 21 августа


ℹ️ Кто родился в этот день

Серге́й Брин (англ. Sergey Brin; род. 21 августа 1973, Москва, СССР) — американский программист и интернет-предприниматель. Вместе с Ларри Пейджем он стал создателем Google и одноимённой крупнейшей в мире поисковой системы. Брин был президентом Alphabet Inc., материнской компании Google, пока не ушёл с этой должности 3 декабря 2019 года. Брин и Пейдж остаются в Alphabet в качестве соучредителей, контролирующих акционеров, членов совета директоров и сотрудников. По данным Форбс 2025 года, Брин занимает 8-е место в списке самых богатых людей в мире ($110B).

Джон Д. Кармак II (англ. John D. Carmack II; род. 21 августа 1970 года, Канзас, США) — американский разработчик компьютерных игр; инженер в областях информатики, аэрокосмической техники и виртуальной реальности; предприниматель, соучредитель и совладелец компаний id Software и Armadillo Aerospace. В 1991 году Кармак стал одним из основателей компании id Software, которая прославилась разработкой основополагающих игр в жанре FPS — Wolfenstein 3D, Doom, Quake, — ведущим программистом которых был Кармак. Его революционные методы программирования и уникальные дизайнерские решения Джона Ромеро способствовали популярности этого жанра в 1990-х годах.

Стивен Макконнелл Кейс (родился 21 августа 1958 года) — со-основатель и CEO AOL; один из драйверов массового выхода пользователей в интернет в 1990-х.


🌐 Знаковые события

1888 — патент У. С. Бэрроуза на счётную машину. Важная веха в линии, ведущей к офисной механизации и ранним вычислительным устройствам.

1957 — первый успешный пуск МБР Р-7 с Байконура. Полёт на ~6000–6500 км до Камчатки; именно этот носитель стал «прародителем» спутниковых и пилотируемых ракет семейства «Союз». 27 августа ТАСС официально сообщил об успешном испытании.

1965 — старт Gemini 5 (NASA). Первый длительный полёт по программе Gemini (8 суток), ключевая проверка топливных элементов как источника энергии для лунных экспедиций.

1989 — исследовательский зонд «Вояджер-2» делает снимки Тритона, спутника планеты Нептун.

2006 — началась регистрация доменных имён в новом домене общего пользования .mobi, предназначенном для мобильных устройств.


#Biography #Birth_Date #Events #21Августа
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Раздел 12. Работа с файлами, I/O и сетью (NIO.2)

Глава 4. Работа с сетью (Socket, HTTP, HttpClient)

Тема: HttpClient в Java 11+: современный HTTP-клиент

Читаем на devforge.ru - ссылка, тык


#Java #для_новичков #beginner #HttpClient #http
👍1
Что выведет код?

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;

public class Task210826 {
public static void main(String[] args) throws Exception {
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://httpbin.org/post"))
.POST(HttpRequest.BodyPublishers.ofString("data"))
.GET()
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
}
}


#Tasks
👍1
Что такое Retry паттерн и как его реализовать в Spring? 🤓

Ответ:

Retry (повтор) — паттерн для повторных попыток выполнения операции в случае временных сбоев (сетевые проблемы, блокировки БД).

В Spring реализован через 
@Retryable (Spring Retry).

Параметры: maxAttempts, backoff (задержка между попытками, с экспоненциальным увеличением).

Пример: 
@Retryable(value = SQLException.class, maxAttempts = 3, backoff = @Backoff(delay = 1000)).

Важно: использовать с idempotent операциями (повтор безопасен). Интегрируется с Circuit Breaker (например, Resilience4j).



#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM