🚧🚧 Тестирование асинхронного контракта Spring Boot приложения (Kafka Consumer+Producer)
Как написать интеграционный\сервисный\авто тест для Spring Boot приложения, которое взаимодействует с внешним миром исключительно с помощью Kafka. Сначала автор разбирает проблему, а затем поэтапно развивает тесты, чтобы привести их к состоянию defenition-of-done.
Читать статью
#гайд
Как написать интеграционный\сервисный\авто тест для Spring Boot приложения, которое взаимодействует с внешним миром исключительно с помощью Kafka. Сначала автор разбирает проблему, а затем поэтапно развивает тесты, чтобы привести их к состоянию defenition-of-done.
Читать статью
#гайд
❤🔥12❤2👍2🔥1🥰1
🤷🤷 Умножение Монтгомери
Деление целых чисел — это долго и сложно. Вычислять остаток от деления — нисколько не проще. При этом в спортивном программировании, да и в прикладной математике типа криптографии, задача умножения чисел по модулю встречается повсеместно.
Один из вариантов эффективного решения — умножать по модулю, вообще при этом не используя операции деления, с помощью алгоритма Монтгомери.
Продолжение тут
#гайд
Деление целых чисел — это долго и сложно. Вычислять остаток от деления — нисколько не проще. При этом в спортивном программировании, да и в прикладной математике типа криптографии, задача умножения чисел по модулю встречается повсеместно.
Один из вариантов эффективного решения — умножать по модулю, вообще при этом не используя операции деления, с помощью алгоритма Монтгомери.
Продолжение тут
#гайд
❤🔥11👍3❤1🥰1
💪💪 7 основных способов оптимизировать кеширование в Spring Boot
В условиях растущих требований к производительности современных приложений, кеширование становится одним из ключевых инструментов для их удовлетворения.
В статье вы узнаете про 7 основных техник оптимизации кеширования в Spring Boot, которые могут помочь значительно улучшить производительность. От выбора идеальных кандидатов для кеширования до реализации асинхронного кеша и мониторинга метрик кеша.
Продолжение здесь
#гайд
В условиях растущих требований к производительности современных приложений, кеширование становится одним из ключевых инструментов для их удовлетворения.
В статье вы узнаете про 7 основных техник оптимизации кеширования в Spring Boot, которые могут помочь значительно улучшить производительность. От выбора идеальных кандидатов для кеширования до реализации асинхронного кеша и мониторинга метрик кеша.
Продолжение здесь
#гайд
🔥25👍6❤1🥰1
🧑🎓🧑🎓 Expression Problem и Объектные алгебры
Expression Problem (EP) — это классическая задача в программировании на совмещение несовместимого.
Автор задачи формулирует следующие цели: создать такую абстракцию, что позволяла бы расширять иерархию в двух направлениях: добавлять новые классы и добавлять новые методы для обработки иерархии, сохраняя при этом строгую статическую типизацию и не требуя изменений существующего кода.
Продолжение тут
#гайд
Expression Problem (EP) — это классическая задача в программировании на совмещение несовместимого.
Автор задачи формулирует следующие цели: создать такую абстракцию, что позволяла бы расширять иерархию в двух направлениях: добавлять новые классы и добавлять новые методы для обработки иерархии, сохраняя при этом строгую статическую типизацию и не требуя изменений существующего кода.
Продолжение тут
#гайд
🤩14❤5🥰1🎉1
🤔🤔 Как разработать онлайновый компилятор кода при помощи Java и Docker
Вы когда-нибудь задумывались, как устроены такие платформы как Codeforces и LeetCode? Как именно они компилируют и выполняют код, поступающий от множества пользователей и проверяют его в тестовых кейсах? Как определяют эффективность алгоритмов?
В этой статье будет подробный разбор того, как выстроить высокоэффективную платформу для решения задач.
Исходный код к этой статье выложен на Github
Продолжение тут
#гайд
Вы когда-нибудь задумывались, как устроены такие платформы как Codeforces и LeetCode? Как именно они компилируют и выполняют код, поступающий от множества пользователей и проверяют его в тестовых кейсах? Как определяют эффективность алгоритмов?
В этой статье будет подробный разбор того, как выстроить высокоэффективную платформу для решения задач.
Исходный код к этой статье выложен на Github
Продолжение тут
#гайд
🔥28❤5🥰1🤔1