Drukarnia.BLOG

About the blog

Software Engineer @ mono Technical Author Mentor

Longreads

  • Pinned longread

    Java. Повний огляд мережевих моделей. Socket API, forking, non-blocking sockets, event-driven API

    Хоча сокет - це один файловий дескриптор, він є двонаправленим каналом комунікації, який використовується для одночасного відправлення і отримання даних. Операційна система та мережеві протоколи забезпечують управління потоками даних, що дозволяє коректно розрізняти дані

    Longread image

    Topics of this longread:

    Java
    Applause from users 66Number of comments 2Longread views in the feed, search, and other places 1601
  • Pinned longread

    Java. WebSocket. Spring WebSocket

    Сервер в свою чергу повертає відповідь із 101 статус кодом — що так, давай змінимо протокол між тобою і мною. Тепер будемо використовувати вебсокети. Потім, після з’єднання, я розсилаю всім клієнтам інфомацію про нового користуча (і собі також, не робив додаткових перевірок).

    Longread image

    Topics of this longread:

    Java
    Applause from users 122Longread views in the feed, search, and other places 1358
  • Pinned longread

    Java. Мережі

    Що відбувається під капотом у "socket.getOutputStream().write("msg".getBytes());" ?

    Longread image

    Topics of this longread:

    Java
    Applause from users 104Longread views in the feed, search, and other places 1205
  • Java Memory Model ↔ PostgreSQL MVCC: один і той самий фундамент конкурентності

    Java Memory Model та PostgreSQL MVCC/Isolation Levels — це дві відповіді на одне й те саме фундаментальне питання: за яких умов зміна, зроблена одним учасником (потоком / транзакцією), стає видимою для іншого?

    Topics of this longread:

    Java
    Applause from users 21Longread views in the feed, search, and other places 1211
  • Коли використовувати JSONB у реляційній БД?

    Проблема: Ви інтегруєтесь із зовнішнім сервісом, чий API змінюється кожні кілька місяців.

    Topics of this longread:

    Sql
    Applause from users 2Longread views in the feed, search, and other places 733
  • Як виконується SQL-запит

    Сьогодні розберемо, що відбувається з вашим SELECT * FROM users WHERE age > 21 перед тим, як БД поверне вам дані

    Topics of this longread:

    Computer Science
    Applause from users 11Number of comments 1Longread views in the feed, search, and other places 408
  • Стратегічний дизайн виключень

    Виключення у Java — звісно ж класний механізм, але невміле їх використання може суттєво погіршити продуктивність системи, особливо у "критичних шляхах" виконання.

    Topics of this longread:

    Java
    Applause from users 47Longread views in the feed, search, and other places 983
  • Як насправді працює @Async у Spring і коли його використання створює більше проблем, ніж вирішує

    Розбираємо небезпеки анотації @Async у Spring — як вона працює за кулісами, чому втрачається контекст логування, підводні камені з транзакціями та self-invocation

    Longread image

    Topics of this longread:

    Java
    Applause from users 23Longread views in the feed, search, and other places 1227
  • RFC 7807. Що це і для чого він потрібен бекенд розробникам

    Як стандарт RFC 7807 змінює підхід до обробки помилок у Java розробці. У статті: що це таке, як працює формат "Problem Details", приклади використання та готовий код для інтеграції у Spring Boot

    Topics of this longread:

    Java
    Applause from users 31Longread views in the feed, search, and other places 904