Проблема: необходимо распределить трафик между несколькими серверами, отдавая запросы серверу с наименьшим количеством активных соединений.
Решение: в книге "Nginx Cookbook: Advanced Recipes for High-performance Load Balancing" автор показывает использование директивы least_conn в блоке upstream для выбора сервера с наименьшей нагрузкой.
Пример кода:
upstream backend {
least_conn;
server backend1.example.com;
server backend2.example.com;
}
server {
location / {
proxy_pass http://backend;
}
}
Преимущества:
— Распределение нагрузки на серверы с учётом их текущей загрузки.
— Улучшение производительности за счёт оптимального использования ресурсов.
— Снижение времени отклика для пользователей.
Еще больше полезных книг — в нашем канале @progbook
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2❤1👏1
😡 А вас тоже бесят облачные сервисы?
Согласитесь, статус отношений с облаками — все сложно. Но что, если можно изменить правила игры?
Мы готовим нечто особенное в мире облачных технологий, но сначала хотим услышать правду от тех, кто реально работает с облаками каждый день.
❓Что мы хотим узнать:
— Для чего вы реально используете облако?
— Чего катастрофически не хватает прямо сейчас?
— Что бесит больше всего? (можно материться)
— Как выбираете провайдера — по цене или по любви?
— и тому подобное
По результатам опроса мы подготовим исследование без маркетингового мусора и вы узнаете, как обстоят дела у коллег.
⚡️Время на опрос: меньше, чем на кофе-брейк. Жмите → https://clc.to/nboYDA
Согласитесь, статус отношений с облаками — все сложно. Но что, если можно изменить правила игры?
Мы готовим нечто особенное в мире облачных технологий, но сначала хотим услышать правду от тех, кто реально работает с облаками каждый день.
❓Что мы хотим узнать:
— Для чего вы реально используете облако?
— Чего катастрофически не хватает прямо сейчас?
— Что бесит больше всего? (можно материться)
— Как выбираете провайдера — по цене или по любви?
— и тому подобное
По результатам опроса мы подготовим исследование без маркетингового мусора и вы узнаете, как обстоят дела у коллег.
⚡️Время на опрос: меньше, чем на кофе-брейк. Жмите → https://clc.to/nboYDA
Please open Telegram to view this post
VIEW IN TELEGRAM
😁33💯7👍4😢4
Нужно быстро развернуть REST API c валидацией, логированием, DTO, безопасностью и документацией?
AI справится с этим за один промпт — код будет готов к продакшну, с учетом архитектурных паттернов.
📝 Промпт:
Generate a Spring Boot REST API for managing [сущность или бизнес-логика, например: product catalog, user profiles, task assignments].
Include CRUD endpoints, validation (Hibernate Validator), exception handling, DTO mapping (MapStruct or ModelMapper), and OpenAPI documentation.
Ensure security with JWT-based authentication and role-based access control (Spring Security).
Use layered architecture (Controller → Service → Repository) and follow clean code principles. Add unit tests for controller and service layers.
— Добавьте
integrate with PostgreSQL using Spring Data JPA and specify indexes/constraints
для подключения к БД.— Добавьте
support pagination and filtering with Pageable and Specification API
для удобных выборок.— Добавьте
plug into CI/CD pipeline with Docker and GitHub Actions
для продвинутого автодеплоя.Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4😁2🔥1👏1
Наш подписчик спрашивает:
Я работаю на Springе. Хоть многопоточность и важная тема, я пока не понимаю, как она реально применяется в проектах. Есть ли случаи, когда её использование критично, а когда можно обойтись без неё? Стоит ли задумываться о многопоточности уже на начальном этапе, или это приходит позже, с более сложными задачами?
🔹 Как вы подходите к использованию многопоточности
— В каких проектах и ситуациях многопоточность действительно помогает, а где без неё можно обойтись.
— С какими трудностями столкнулись, когда начали внедрять многопоточность в своих приложениях.
— Какие подходы к многопоточности сработали для вас лучше всего.
P.S. Если хотите задать вопрос, заполните нашу гугл-форму. Это займет 5 минут.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👏2❤1🔥1
🌧️ Облачная терапия: время выговориться!
Знакомая ситуация? Покупаете облако как BMW, а получаете телегу с квадратными колесами. Обещают 99.9% uptime, а сервер падает на релизе. Техподдержка отвечает через сутки фразой «попробуйте перезагрузить».
Пора узнать, как обстоят дела с облаками на самом деле. Поэтому мы собираем ваши реальные истории про облачные сервисы.
🤫 О чем спросим:
— Зачем вам вообще это облако нужно
— Какие косяки достали до печенок
— Сколько денег утекает в никуда ежемесячно
— Что должно случиться, чтобы вы сменили провайдера
— И еще пару каверзных вопросов
⏱️ 2 минуты честности = большое исследование без воды → https://clc.to/nboYDA
Знакомая ситуация? Покупаете облако как BMW, а получаете телегу с квадратными колесами. Обещают 99.9% uptime, а сервер падает на релизе. Техподдержка отвечает через сутки фразой «попробуйте перезагрузить».
Пора узнать, как обстоят дела с облаками на самом деле. Поэтому мы собираем ваши реальные истории про облачные сервисы.
🤫 О чем спросим:
— Зачем вам вообще это облако нужно
— Какие косяки достали до печенок
— Сколько денег утекает в никуда ежемесячно
— Что должно случиться, чтобы вы сменили провайдера
— И еще пару каверзных вопросов
⏱️ 2 минуты честности = большое исследование без воды → https://clc.to/nboYDA
❤2
📺 Что посмотреть — How Netflix Uses Java
📅 Опубликовано: месяц назад
👀 Просмотров: 200 тыс.
🕒 Длительность: около 48 минут
Чем интересно:
— Миграция всех сервисов на Java 17
— Перевод сервисов на Spring Boot
— Отказ от REST в пользу GRPC и GraphQL
— Тестирование виртуальных потоков
— Переход на Generational ZGC
🔗 Смотреть
🐸 Библиотека джависта #буст
📅 Опубликовано: месяц назад
👀 Просмотров: 200 тыс.
🕒 Длительность: около 48 минут
Чем интересно:
— Миграция всех сервисов на Java 17
— Перевод сервисов на Spring Boot
— Отказ от REST в пользу GRPC и GraphQL
— Тестирование виртуальных потоков
— Переход на Generational ZGC
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍1🔥1
Успей впрыгнуть на курс «AI-агенты для DS» до завтрашнего повышения цены: 59.000 р. вместо
Про RAG слышали все — это уже два года самый массовый способ применения LLM в проде для бизнеса.
Это значит, что точность и надёжность такого решения достаточно предсказуемы для того, чтобы исключить человека из процесса аппрува выдачи LLM,
а связка «локально развернутая LLM + RAG над корпоративными документами» обеспечивает достаточную конфиденциальность, чтобы снять тревожность
«что наши данные попадут в OpenAI».
Эта история настолько популярна, что на рынке есть готовые RAG-решения,
а даже «маленькие» опенсорс-модели (до 5B) уже обзавелись своей RAG-ареной:
👉 https://huggingface.co/spaces/aizip-dev/SLM-RAG-Arena
Во время обучения на курсе «AI-агенты для DS» научим собирать автономные системы под реальные бизнес-задачи. На прошлой неделе мы рассказали о первом занятии.
— Собираем свой RAG-пайплайн на своих данных
— Обсуждаем, почему качество такой системы нельзя измерять «на глаз»
— Разбираем схему LLM as a Judge и как подготовить для неё датасет
— Что такое guardrails и как они спасают от бреда
— Что делать, когда LLM не знает ответа
— Смотрим на агентский RAG и обсуждаем, можно ли использовать RAG как память агента
Если пропустили первое занятие, то вот ссылочка
❗️До повышения цены остался последний день — бронируйте место сейчас
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁26👍5❤2💯2
😱 Завтра цена на курс «AI-агенты для DS» вырастет
Пока вы думаете — другие уже покупают. Что вы теряете, откладывая решение? Как минимум — 10 000 рублей, именно столько вы переплатите завтра. Как максимум — шанс войти в топ-1% дата-сайентистов, которые умеют строить AI-агенты.
🎓 Чему вы научитесь на курсе:
— адаптировать LLM под разные предметные области и данные
— собирать свою RAG-систему: от ретривера и реранкера до генератора и оценки качества
— строить AI-агентов с нуля — на основе сценариев, функций и взаимодействия с внешней средой
Решение за вами.
👉 Купить курс по старой цене
Пока вы думаете — другие уже покупают. Что вы теряете, откладывая решение? Как минимум — 10 000 рублей, именно столько вы переплатите завтра. Как максимум — шанс войти в топ-1% дата-сайентистов, которые умеют строить AI-агенты.
🎓 Чему вы научитесь на курсе:
— адаптировать LLM под разные предметные области и данные
— собирать свою RAG-систему: от ретривера и реранкера до генератора и оценки качества
— строить AI-агентов с нуля — на основе сценариев, функций и взаимодействия с внешней средой
Решение за вами.
👉 Купить курс по старой цене
proglib.academy
Курс|AI-агенты для DS-специалистов
На курсе ты разберёшься, как работают AI-агенты и как их применять в работе — от текстовых помощников до систем, помогающих принимать решения. Разберем архитектуру агентов, связку с внешними API, пайплайны действий и популярные библиотеки. Курс включает реальные…
❤1
🔍 Загадка для разработчиков
Что за паттерн загадан на картинке? Пишите в комменты ответ под спойлером.
💬 Рассказывайте интересные кейсы реализации из практики
🐸 Библиотека джависта #междусобойчик
Что за паттерн загадан на картинке? Пишите в комменты ответ под спойлером.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1🔥1😁1
🔹 Spring Framework v7.0.0-M5
Исправления ошибок, улучшения документации, обновления зависимостей и новые функции. Классы PropertyPlaceholderConfigurer и PreferencesPlaceholderConfigurer объявлены как deprecated, появилась поддержка Jackson 3.0 и многое другое.
🔹 Стратегическое партнёрство Kotlin и Spring
Ключевые инициативы включают повышение null-безопасности, разработку официальных обучающих материалов на Kotlin, внедрение быстрой рефлексии с помощью библиотеки kotlinx.reflect и создание новых DSL для конфигурации бинов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1👏1
Forwarded from Библиотека задач по Java | тесты, код, задания
Что будет результатом кода?
Anonymous Quiz
24%
Ошибка компиляции
4%
null
53%
10
4%
0
15%
ClassCastException
🔥6👍3👏2
Разработчик (Managed Greenplum) — 300 000 — 400 000 ₽ — удалёнка
Java Tech Lead — от 380 000 ₽ — гибрид, удалёнка (Санкт-Петербург, Казань, Сочи)
Java разработчик (Platform V Works::TaskTracker) — до 300 000 ₽ — гибрид, удалёнка (Санкт-Петербург, Казань, Сочи)
Team Lead Full Stack разработчик (Java + React) — от 300 000 до 400 000 ₽ — удалёнка
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1🔥1👏1
Проблема: при обработке больших объемов данных важно не только их собрать, но и правильно структурировать для дальнейшего анализа. Обычные SQL-запросы могут стать громоздкими и сложными, особенно когда речь идет о масштабируемости и производительности.
Решение: в книге «Analytics Engineering with SQL and dbt: Building Meaningful Data Models at Scale» авторы описывают, как использовать dbt (data build tool) для построения и трансформации данных. dbt позволяет создавать чистые, поддерживаемые и легко масштабируемые модели данных, используя простые SQL-запросы, что значительно ускоряет процессы аналитики.
Пример кода:
-- Пример модели dbt для расчета среднего чека по категориям товаров
WITH base AS (
SELECT
category_id,
SUM(order_amount) AS total_sales,
COUNT(DISTINCT order_id) AS total_orders
FROM raw.orders
GROUP BY category_id
)
SELECT
category_id,
total_sales / total_orders AS avg_order_value
FROM base
Преимущества:
— Dbt позволяет быстро разрабатывать и тестировать модели данных, сокращая время от идеи до реализации.
— Подходы, описанные в книге, позволяют строить модели, которые легко масштабируются по мере роста данных.
— Акцент на совместной работе между аналитиками и инженерами способствует более эффективному решению задач.
Еще больше полезных книг — в нашем канале @progbook
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2👏2
📌 6 принципов безопасности API
API — это не просто интерфейс, а ворота в вашу систему. Без должной защиты они становятся уязвимой точкой для атак.
🔐 Ключевые принципы безопасности API:
— Использование HTTPS
— Аутентификация и авторизация
— Ограничение запросов
— Валидация входных данных
— Управление доступом на основе ролей (RBAC)
— Мониторинг и логирование
🔗 Подробнее в статье
🐸 Библиотека джависта #буст
API — это не просто интерфейс, а ворота в вашу систему. Без должной защиты они становятся уязвимой точкой для атак.
🔐 Ключевые принципы безопасности API:
— Использование HTTPS
— Аутентификация и авторизация
— Ограничение запросов
— Валидация входных данных
— Управление доступом на основе ролей (RBAC)
— Мониторинг и логирование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥3👏1
💔AI vs Developer: who wins?
Бигтех уже режет найм разработчиков. Вайб-кодинг повсюду. Джуны не нужны. Но так ли это на самом деле?
Мы хотим разобраться, как ИИ влияет на рынок труда в IT. В реальности, а не в головах CEO или HR. Поэтому приглашаем пройти опрос.
Результаты нашего исследования позволят выяснить, сколько разработчиков потеряли работу из-за ИИ? Какие навыки сейчас ценятся больше всего? Кто зарабатывает больше — те, кто использует ИИ или игнорирует?
👾 Расскажите свою историю, чтобы помочь комьюнити: https://clc.to/aFntFw
Бигтех уже режет найм разработчиков. Вайб-кодинг повсюду. Джуны не нужны. Но так ли это на самом деле?
Мы хотим разобраться, как ИИ влияет на рынок труда в IT. В реальности, а не в головах CEO или HR. Поэтому приглашаем пройти опрос.
Результаты нашего исследования позволят выяснить, сколько разработчиков потеряли работу из-за ИИ? Какие навыки сейчас ценятся больше всего? Кто зарабатывает больше — те, кто использует ИИ или игнорирует?
👾 Расскажите свою историю, чтобы помочь комьюнити: https://clc.to/aFntFw
❤2🤔1
Ищете решение для построения масштабируемого микросервиса с использованием Event Sourcing и CQRS? AI поможет вам сгенерировать шаблон, который будет учитывать все архитектурные принципы и лучшие практики для сложных бизнес-логик.
📝 Промпт:
Generate a Spring Boot microservice that implements Event Sourcing and CQRS (Command Query Responsibility Segregation).
— Implement event storage (using EventStore or any other event-sourcing mechanism).
— Design the service layer using separate models for command and query operations.
— Use an event-driven approach with messaging (e.g., Kafka or RabbitMQ) to communicate between services.
— Secure the API with JWT authentication and role-based access control (Spring Security).
— Implement database persistence for event snapshots and projections (using Spring Data JPA).
— Добавьте
support asynchronous messaging with Kafka or RabbitMQ
для обработки событий между микросервисами.— Добавьте
implement Command and Query models using CQRS
для разделения логики записи и чтения данных.— Добавьте
integrate snapshotting mechanism for efficient aggregate recovery
и управление состоянием событий.— Добавьте
enable monitoring and tracing with Spring Actuator and Zipkin
для отслеживания производительности и запросов.Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3🔥2