Стратегічний дизайн виключень
Виключення у Java — звісно ж класний механізм, але невміле їх використання може суттєво погіршити продуктивність системи, особливо у "критичних шляхах" виконання.
Виключення у Java — звісно ж класний механізм, але невміле їх використання може суттєво погіршити продуктивність системи, особливо у "критичних шляхах" виконання.
Розбираємо небезпеки анотації @Async у Spring — як вона працює за кулісами, чому втрачається контекст логування, підводні камені з транзакціями та self-invocation
Як стандарт RFC 7807 змінює підхід до обробки помилок у Java розробці. У статті: що це таке, як працює формат "Problem Details", приклади використання та готовий код для інтеграції у Spring Boot
Давайте розглянемо, як задачу https://leetcode.com/problems/relative-ranks/solutions/6326961/sorting-mapping-approach можна вирішити трьома мовами програмування — Java, Kotlin та Scala.
Глибоке занурення в протоколи TLS/SSL та інфраструктуру відкритих ключів (PKI). Основні поняття, процес встановлення захищеного з'єднання, роль сертифікатів та ланцюжка довіри
У довгочиті розглядаються поширені помилки при проектуванні REST API та способи їх уникнення: версіонування, використання DTO, підхід CQRS, робота з мікросервісами, та інші практики для підвищення продуктивності, безпеки й зручності API
Ця публікація охоплює основи роботи з функціями в мові програмування Mash Script: оголошення, використання опціональних параметрів, повернення значень, продвинуту типізацію та створення анонімних функцій.
У перших версіях Java багатопоточність реалізовувалася за допомогою класу Thread, який дозволяв створювати нові потоки. Проте ця модель мала багато недоліків:
Довгочит висвітлює 10 маловідомих концепцій тестування продуктивності. Описано їхнє значення, причини виникнення, методи вирішення та моніторингу, що допомагає оптимізувати роботу систем.
У світі, де кібербезпека стає все більш важливою, традиційні методи автентифікації, такі як паролі, вже не відповідають сучасним вимогам безпеки. На допомогу приходить безпарольна автентифікація, зокрема стандарти FIDO2 та WebAuthn.
Недавно була задача, зв'язана з QR кодами. І про них трохи розкажу і про те, як їх можна використовувати.
У сучасних Java-додатках важливо забезпечити не лише високу продуктивність, але й коректне завершення роботи. Тому розглянемо основні потоки JVM, процес graceful shutdown, використання класу Runtime та механізму shutdown hooks для ефективного завершення роботи програм.
Як налаштувати та інтегрувати ELK стек зі Spring Boot застосунком щоб забезпечити централізоване зберігання, аналіз і візуалізацію логів для покращення моніторингу та діагностики.
Хешування паролів - це важливий елемент захисту інформації в сучасних системах. Використання солі в хешуванні додає додатковий рівень безпеки, а алгоритм BCrypt дозволяє забезпечити високу стійкість до атак грубою силою та інших видів атак.
Пост про те, як сервіс надає своєму користувачу гарантії і те, як ці гарантії необхідно формувати.
Хоча сокет - це один файловий дескриптор, він є двонаправленим каналом комунікації, який використовується для одночасного відправлення і отримання даних. Операційна система та мережеві протоколи забезпечують управління потоками даних, що дозволяє коректно розрізняти дані
Пост про порівняння протоколів у Rabbit. Різні версії Advanced Message Queuing Protocol. Недоліки та переваги, способи використання.
Сервер в свою чергу повертає відповідь із 101 статус кодом — що так, давай змінимо протокол між тобою і мною. Тепер будемо використовувати вебсокети. Потім, після з’єднання, я розсилаю всім клієнтам інфомацію про нового користуча (і собі також, не робив додаткових перевірок).
Back-end розробник Java Kotlin
Software Engineer
Java Software Engineer