— NLB (Network Load Balancer) – распределяет трафик на уровне IP. Он работает на более низком уровне и не анализирует HTTP-запросы.
— ALB (Application Load Balancer) – маршрутизирует запросы на основе HTTP-заголовков или URL. ALB предлагает более сложные правила маршрутизации. Выбор между NLB и ALB зависит от ваших потребностей. Для простых сервисов в небольших масштабах одного балансировщика нагрузки может быть достаточно.
— API Gateway – работает на уровне приложений и берет на себя задачи, такие как аутентификация, ограничение скорости запросов, кэширование и другие. Его функции отличаются от Load Balancer.
Схема иллюстрирует детали работы этих компонентов. Чаще всего Load Balancer и API Gateway используются вместе, чтобы создать масштабируемую и безопасную архитектуру для современных веб-приложений.
— Опция A: ALB + сервисы
ALB распределяет запросы между различными сервисами. Ограничение запросов, аутентификация и другие функции реализуются на уровне сервисов. Это более гибкий подход, но требует больше работы при разработке.
— Опция B: API Gateway + сервисы
API Gateway берет на себя функции аутентификации, ограничения запросов, кэширования и других задач. Это упрощает разработку сервисов, но уменьшает гибкость по сравнению с первым вариантом.
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤3🔥2
21 января(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.
Как это будет:
📂 Сергей Чамкин, старший разработчик из Uzum, ex-WildBerries, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Cергей будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Сергею
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤2👍1
Spring Initializr – инструмент, который поможет вам с начальной конфигурацией Spring-приложения. Выберите сборщик, зависимости, версию Java, и он сгенерирует базовую структуру проекта, готовую для импорта в вашу IDE и начала разработки.
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥6❤4
Stream API (поток) — принципиально новый способ работы с коллекциями в Java (по крайней мере он был таким на момент релиза).
В данной статье речь пойдёт о наиболее интересных и показательных примерах использования Stream.
Обсудим, как применять Stream API эффективно, делая код лучше и избегая ошибок.
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤5🔥4
На открытом уроке курса «AI-агенты: продвинутое внедрение и использование» рассмотрим:
• Архитектуру AI-driven приложений;
• Выбор LLM в качестве ядра;
• Создание AI-driven Telegram-бота.
После урока вы будете знать:
• Архитектуру AI-driven приложений;
• Иметь чек-лист для выбора LLM под задачу;
• Практический навык использования LLM в чат-ботах Telegram.
Спикер: Андрей Сорокин, Ведущий разработчик C# ASP NET | Архитектор программного обеспечения
Регистрируйтесь сейчас - напомним накануне: регистрация
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
• Архитектуру AI-driven приложений;
• Выбор LLM в качестве ядра;
• Создание AI-driven Telegram-бота.
После урока вы будете знать:
• Архитектуру AI-driven приложений;
• Иметь чек-лист для выбора LLM под задачу;
• Практический навык использования LLM в чат-ботах Telegram.
Спикер: Андрей Сорокин, Ведущий разработчик C# ASP NET | Архитектор программного обеспечения
Регистрируйтесь сейчас - напомним накануне: регистрация
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
❤4👍3🔥3
—
brew install jadxjadx предоставляет инструменты командной строки и GUI для получения исходного кода Java из APK, dex, aar, aab и zip-файлов.
Также позволяет декодировать
AndroidManifest.xml и другие ресурсы из resources.arsc.Имеется встроенный деобфускатор.
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4🔥1
SeaTunnel - это высокопроизводительный инструмент распределенной интеграции данных нового поколения, способный ежедневно синхронизировать огромные объемы данных.
SeaTunnel способен стабильно и эффективно синхронизировать данные в режиме реального времени и уже используется в продакшене почти 100 компаниями.
Написан полностью на Java
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥6❤1
ИИ уже стал частью разработки. Вопрос больше не в том, использовать его или нет, а в том, кто управляет процессом — вы или модель?
28 января OTUS проводит открытый урок «Вайбкодинг: практика разработки (Kotlin) проекта при участии ИИ».
На вебинаре разберём, как современные ИИ-помощники влияют на код, архитектуру и качество решений.
Вы увидите несколько подходов к работе с ИИ, сравните форматы взаимодействия и поймёте, почему неумелое использование нейросетей ломает проекты вместо ускорения разработки. Отдельное внимание уделим постановке задач ИИ и тому, как меняется дизайн приложений, когда разработчик выступает не исполнителем, а контролёром и архитектором решений.
Встречаемся в преддверии старта курса «Kotlin Backend Developer. Professional».
Зарегистрируйтесь, чтобы понять, как встроить ИИ в разработку осознанно и использовать его как инструмент, а не источник технического долга: https://vk.cc/cTDsmr
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
28 января OTUS проводит открытый урок «Вайбкодинг: практика разработки (Kotlin) проекта при участии ИИ».
На вебинаре разберём, как современные ИИ-помощники влияют на код, архитектуру и качество решений.
Вы увидите несколько подходов к работе с ИИ, сравните форматы взаимодействия и поймёте, почему неумелое использование нейросетей ломает проекты вместо ускорения разработки. Отдельное внимание уделим постановке задач ИИ и тому, как меняется дизайн приложений, когда разработчик выступает не исполнителем, а контролёром и архитектором решений.
Встречаемся в преддверии старта курса «Kotlin Backend Developer. Professional».
Зарегистрируйтесь, чтобы понять, как встроить ИИ в разработку осознанно и использовать его как инструмент, а не источник технического долга: https://vk.cc/cTDsmr
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
❤5👍2🔥2
Оркестрация и хореография: что выбрать?
Когда дело доходит до координации взаимодействий между микросервисами, выбор между оркестрацией и хореографией — один из ключевых вопросов. Оба подхода имеют свои плюсы и минусы, а также подходят для разных архитектурных сценариев.
🔹 Оркестрация — это централизованный подход, при котором один сервис (оркестратор) управляет всеми взаимодействиями между сервисами. Он выступает дирижером, направляя выполнение процессов и следя за их последовательностью.
▪️ Плюсы:
- Четкий контроль за процессом выполнения задач.
- Упрощенная отладка и мониторинг.
▪️ Минусы:
- Слабая гибкость при изменении требований.
- Если оркестратор падает, система теряет управление процессами.
🔹 Хореография — децентрализованный подход, при котором каждый сервис реагирует на события и инициирует свои действия на основе этих событий. Здесь нет центрального контроллера; сервисы взаимодействуют по принципу «реакции».
▪️ Плюсы:
- Высокая гибкость и легкость в добавлении новых сервисов.
- Отсутствие единой точки отказа.
▪️ Минусы:
- Сложность в отслеживании последовательности выполнения.
- Потенциальные проблемы с согласованностью данных.
🎯 Когда что выбрать?
- Оркестрация хорошо подходит для бизнес-процессов с четкой последовательностью действий, когда требуется строгий контроль выполнения.
- Хореография лучше подходит для распределенных систем, где важно масштабирование и гибкость, а также в сценариях с высокой скоростью событий и реакций.
Подписывайся на наш канал в Max🟪
Когда дело доходит до координации взаимодействий между микросервисами, выбор между оркестрацией и хореографией — один из ключевых вопросов. Оба подхода имеют свои плюсы и минусы, а также подходят для разных архитектурных сценариев.
🔹 Оркестрация — это централизованный подход, при котором один сервис (оркестратор) управляет всеми взаимодействиями между сервисами. Он выступает дирижером, направляя выполнение процессов и следя за их последовательностью.
▪️ Плюсы:
- Четкий контроль за процессом выполнения задач.
- Упрощенная отладка и мониторинг.
▪️ Минусы:
- Слабая гибкость при изменении требований.
- Если оркестратор падает, система теряет управление процессами.
🔹 Хореография — децентрализованный подход, при котором каждый сервис реагирует на события и инициирует свои действия на основе этих событий. Здесь нет центрального контроллера; сервисы взаимодействуют по принципу «реакции».
▪️ Плюсы:
- Высокая гибкость и легкость в добавлении новых сервисов.
- Отсутствие единой точки отказа.
▪️ Минусы:
- Сложность в отслеживании последовательности выполнения.
- Потенциальные проблемы с согласованностью данных.
🎯 Когда что выбрать?
- Оркестрация хорошо подходит для бизнес-процессов с четкой последовательностью действий, когда требуется строгий контроль выполнения.
- Хореография лучше подходит для распределенных систем, где важно масштабирование и гибкость, а также в сценариях с высокой скоростью событий и реакций.
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍5🔥4
Техника «10 тестов в день» – одна из самых эффективных в изучении Java.
Канал Java Guru выложил в открытый доступ тесты, которые дают на собеседованиях в топовые компании, вроде Яндекс и MailRu.
➤ Открываете задачку – выбираете вариант – видите правильный ответ и детальное объяснение к нему. Так вы усвоите на 50% больше знаний в сжатые сроки.
Подписывайтесь и качайте свои скиллы: @javatasks
Канал Java Guru выложил в открытый доступ тесты, которые дают на собеседованиях в топовые компании, вроде Яндекс и MailRu.
➤ Открываете задачку – выбираете вариант – видите правильный ответ и детальное объяснение к нему. Так вы усвоите на 50% больше знаний в сжатые сроки.
Подписывайтесь и качайте свои скиллы: @javatasks
❤4🔥3👍2
Начиная с Spring Boot 3.1, вы можете автоматически запускать внешние сервисы (например, базы данных) в режиме dev, используя Testcontainers и новую `spring-boot:test-run`
Подписывайся на наш канал в Max🟪
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤9🔥5
webmagic охватывает весь жизненный цикл краулера: загрузку, управление url, извлечение контента и его сохранение.
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍6❤5☃1
Apache Zeppelin — веб-блокнот на Java, позволяющий проводить интерактивную аналитику данных и создавать совместные документы с использованием SQL, Scala и других языков.
Быстрый старт с помощью Docker:
docker run -p 8080:8080 --rm --name zeppelin apache/zeppelin:0.11.1Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤4👍3☃1
Java Streams: Основные методы для чистого и эффективного кода!
Java Streams предлагают множество методов для упрощения манипуляций с данными и повышения читаемости кода.
Вот краткое руководство с примерами:
Освойте эти методы, чтобы писать более чистый и эффективный код на Java!💡
Подписывайся на наш канал в Max🟪
Java Streams предлагают множество методов для упрощения манипуляций с данными и повышения читаемости кода.
Вот краткое руководство с примерами:
Освойте эти методы, чтобы писать более чистый и эффективный код на Java!
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍5❤3🍾1
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥5❤2
Prototype — это порождающий паттерн, который позволяет создавать новые объекты путем клонирования уже существующих. Вместо создания объектов с нуля, можно копировать существующие, что сокращает время и ресурсы на создание объектов с похожими параметрами.
Использование:
Преимущества:
Недостатки:
Подписывайся на наш канал в Max
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥4❤3
Forwarded from Java Guru 🤓
Что будет результатом запуска, если активный профиль не задан?
Anonymous Quiz
12%
Spring выберет бин DevNotificationService по умолчанию
8%
Spring выберет первый бин в алфавитном порядке
49%
Приложение упадёт с NoSuchBeanDefinitionException
13%
Ни один бин не будет создан, но приложение стартует
18%
Оба бина будут созданы - NoUniqueBeanDefinitionException
👍5❤4🔥4
Монолитная архитектура часто воспринимается как что-то устаревшее. Но на практике именно монолит остаётся основой большинства production-систем — особенно там, где важны скорость разработки, прозрачность логики и предсказуемость сопровождения.
На открытом уроке OTUS разберём разработку монолитного приложения со Spring, используя Kotlin. Поговорим о плюсах и минусах монолитной архитектуры, разберём фреймворк Spring и особенности его использования в Kotlin-проектах. Покажем, как интегрировать транспортные модели, собрать приложение и подготовить его к запуску.
Вы увидите полный путь от архитектурного решения до работающего приложения. Попрактикуетесь в разработке монолита, разберётесь в особенностях Spring + Kotlin и научитесь упаковывать приложение в Docker. Урок будет полезен backend-разработчикам, которые хотят глубже понимать архитектуру, уверенно работать со Spring и собирать production-готовые сервисы.
Встречаемся 4 февраля в 19:00 МСК в преддверии старта курса «Kotlin Backend Developer. Professional».
Регистрация открыта: https://vk.cc/cTPdQW
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
На открытом уроке OTUS разберём разработку монолитного приложения со Spring, используя Kotlin. Поговорим о плюсах и минусах монолитной архитектуры, разберём фреймворк Spring и особенности его использования в Kotlin-проектах. Покажем, как интегрировать транспортные модели, собрать приложение и подготовить его к запуску.
Вы увидите полный путь от архитектурного решения до работающего приложения. Попрактикуетесь в разработке монолита, разберётесь в особенностях Spring + Kotlin и научитесь упаковывать приложение в Docker. Урок будет полезен backend-разработчикам, которые хотят глубже понимать архитектуру, уверенно работать со Spring и собирать production-готовые сервисы.
Встречаемся 4 февраля в 19:00 МСК в преддверии старта курса «Kotlin Backend Developer. Professional».
Регистрация открыта: https://vk.cc/cTPdQW
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
❤4👍2🔥2