JAVAPROGLIB Telegram 6509
📣 Истории подписчиков: как чуть не уронили прод

Каждый разработчик хоть раз сталкивался с багом, который заставляет сердце уйти в пятки. Особенно, если это касается продакшена. Делимся реальными историями из жизни, когда всё пошло не по плану.

История подписчика:
Я работал в команде, которая разрабатывала сервис для обработки платежей. Вроде бы ничего сложного — получаем запрос, проверяем данные, отправляем в банк. Но однажды клиенты начали жаловаться: платежи зависают, интерфейс тормозит, а логи заполняются непонятными ошибками.

Первая мысль: проблемы с базой. Проверили — всё ок. Вторая гипотеза: сеть. Но серверы были в порядке. Тогда мы начали копать глубже… и нашли виновника. Это был бесконтрольный рост количества потоков.

Код создавал новый поток на каждый входящий запрос, но их никто не закрывал. В условиях небольшой нагрузки это не было заметно, но когда число пользователей выросло, сервер просто задохнулся. Потоки накапливались, память забивалась, а система начинала вести себя непредсказуемо.

В итоге срочно внедрили пул потоков, который ограничил их количество и позволил переиспользовать существующие. Это сразу же стабилизировало работу сервиса.


💬 Делитесь в комментариях багами, который чуть не положили (или положили) прод

🐸 Библиотека джависта #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍5❤‍🔥3



tgoop.com/javaproglib/6509
Create:
Last Update:

📣 Истории подписчиков: как чуть не уронили прод

Каждый разработчик хоть раз сталкивался с багом, который заставляет сердце уйти в пятки. Особенно, если это касается продакшена. Делимся реальными историями из жизни, когда всё пошло не по плану.

История подписчика:

Я работал в команде, которая разрабатывала сервис для обработки платежей. Вроде бы ничего сложного — получаем запрос, проверяем данные, отправляем в банк. Но однажды клиенты начали жаловаться: платежи зависают, интерфейс тормозит, а логи заполняются непонятными ошибками.

Первая мысль: проблемы с базой. Проверили — всё ок. Вторая гипотеза: сеть. Но серверы были в порядке. Тогда мы начали копать глубже… и нашли виновника. Это был бесконтрольный рост количества потоков.

Код создавал новый поток на каждый входящий запрос, но их никто не закрывал. В условиях небольшой нагрузки это не было заметно, но когда число пользователей выросло, сервер просто задохнулся. Потоки накапливались, память забивалась, а система начинала вести себя непредсказуемо.

В итоге срочно внедрили пул потоков, который ограничил их количество и позволил переиспользовать существующие. Это сразу же стабилизировало работу сервиса.


💬 Делитесь в комментариях багами, который чуть не положили (или положили) прод

🐸 Библиотека джависта #междусобойчик

BY Библиотека джависта | Java, Spring, Maven, Hibernate




Share with your friend now:
tgoop.com/javaproglib/6509

View MORE
Open in Telegram


Telegram News

Date: |

Matt Hussey, editorial director of NEAR Protocol (and former editor-in-chief of Decrypt) responded to the news of the Telegram group with “#meIRL.” End-to-end encryption is an important feature in messaging, as it's the first step in protecting users from surveillance. Private channels are only accessible to subscribers and don’t appear in public searches. To join a private channel, you need to receive a link from the owner (administrator). A private channel is an excellent solution for companies and teams. You can also use this type of channel to write down personal notes, reflections, etc. By the way, you can make your private channel public at any moment. To view your bio, click the Menu icon and select “View channel info.” It’s easy to create a Telegram channel via desktop app or mobile app (for Android and iOS):
from us


Telegram Библиотека джависта | Java, Spring, Maven, Hibernate
FROM American