Нагрузим IT!
315 subscribers
364 photos
15 videos
207 links
📊 Тестирование без душноты

QA-инженер Ozon и преподаватель объясняет нагрузку, инструменты и собесы простым языком

Чат: @lets_load_chat
Автор: @Slabodenyuk_Anatoly
Download Telegram
Со следующей недели посты в канал вернутся ✍️

Организм хотел поболеть. Кто я такой, чтобы ему запрещать 😅
👍1
This media is not supported in the widget
VIEW IN TELEGRAM
Представьте, вы запускаете нагрузочный тест, а после его завершения не понимаете, на какие именно метрики нужно обращать внимание, потому что их очень много 🤯

📊 В новой статье разбираемся с ключевыми методами сбора метрик

💡 Зачем это читать?
Чтобы:
✔️ Познакомиться с основными методами сбора метрик
✔️ Не терять часы на анализ «мусорных» данных;
✔️ Точно понимать, какие именно метрики вас будут интересовать в различных ситуациях

#статья | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥2👏1🤔1
В этот день хочется пожелать вам не перегружать свою вторую половинку и направить на неё все свои ресурсы - с максимальной производительностью и без сбоев! ☺️

❤ Держите несколько валентинок нагрузинок (там еще больше каламбуров) ❤


#любовь | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Сегодня рассмотрим, чем отличаются два подхода к сбору метрик - pull или push ⚖️

(Постоянно путаю эти движения при взаимодействиях с дверьми 😂)

Статья разделена на две части (сиквел выйдет позже на этой неделе 2️⃣)

#статья | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
Наводим порядок в Docker: команды для чистоты и спокойствия 🧹

Привет, коллеги! 👋

Сегодня мы разберём, как привести в порядок вашу Docker-среду с помощью нескольких полезных команд. Если вы хотите остановить все запущенные контейнеры и начать все с чистого листа, то этот пост будет вам полезен!


🛑 Остановка всех контейнеров:
docker stop $(docker ps -aq)


Что это делает?
Эта команда останавливает все запущенные контейнеры.
$(docker ps -aq) возвращает список всех контейнеров (и запущенных, и остановленных), а
docker stop завершает их работу.

Зачем это нужно?
Иногда контейнеры "зависают" или занимают порты впустую. Это как сказать: "Всем отдыхать!" 🌙

⚠️ Будьте внимательны:
Останавливаются ВСЕ контейнеры. Проверьте, нет ли среди них тех, что должны работать 24/7. Для точечной остановки лучше использовать docker stop <container_id>.


🗑 Удаление всех контейнеров:
docker rm $(docker ps -aq)


Что это делает?
Удаляет все остановленные контейнеры. Тот же $(docker ps -aq) даёт список, а docker rm убирает их без следа.

Зачем это нужно?
Если у вас накопились старые контейнеры, которые только занимают место, эта команда — как удаление сразу всех приложений 🧼

⚠️ Будьте внимательны:
Удаляется ВСЁ. Если в контейнерах остались важные данные, лучше сначала проверить список с помощью docker ps -a и удалить выборочно.


🧹 Полная очистка системы:
docker system prune -a


Что это делает?
Удаляет всё неиспользуемое: остановленные контейнеры, сети, образы без тегов и кэш. Флаг -a усиливает эффект, убирая даже неиспользуемые образы. После ввода команды Docker попросит подтвердить действие нажатием y.

Зачем это нужно?
Со временем Docker обрастает "мусором", который ест место на диске. Эта команда — как весенняя очистка корзины. 🌸

⚠️ Будьте внимательны:
Действие необратимо, и удаляются даже образы, которые могут пригодиться позже. Перед запуском убедитесь, что всё нужное сохранено или активно используется.


📦 Уборка томов:
docker volume prune -a


Что это делает?
Удаляет все неиспользуемые тома — места, где контейнеры хранят данные. Как и в предыдущем случае, нужно подтвердить нажатием y.

Зачем это нужно?

Тома могут копиться, как старые коробки в кладовке. Эта команда освобождает место и возвращает порядок. 📦

⚠️ Будьте внимательны:
Если тома содержат данные, которые могут понадобиться, сначала проверьте их список с помощью docker volume ls. Удаление — это навсегда!


Выполните эти команды последовательно, чтобы полностью очистить вашу систему от докера и вернуться в изначальное состояние
docker stop $(docker ps -aq)

docker rm $(docker ps -aq)

docker system prune -a

docker volume prune -a



#полезности | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤔1🤯1
🧠 Оно живое!

Коллеги, канал жив, всё хорошо 👍 Просто работал на настоящей работе и проходил курсы. Уровень ЗП и должность ведь повышается от количества полученных сертификатов? Ведь так? (в скобочках - нет)

В процессе обучения наткнулся на инструмент от Гугла! 💎 Хочу поделиться им с вами. 🔍 Он позволяет быстро и удобно получить краткое содержание (саммари) из любого типа источников — книги, видео, лекции в формате аудио.

✨ Инструмент называется:
Notebooklm от Google (нужен VPN)

🛠 Что умеет этот инструмент:
- Кратко пересказать информацию из источника, который вы приложите
- Транскрибировать весь текст из аудио источника
- Общаться с гугловской нейросетью по информации из вашего источника (очень удобно, когда нужно уточнить какую-то непонятную тему)
- Создавать интеллект-карты по всей информации из источника
- Создать викторину с вопросами по вашему источнику

🎭 Пример работы сервиса на монологе одного из лучших мыслителей нашего времени — Сержа "идущего к реке" Дур-Дачника на скриншотах.

🎁 В комментарии приложу полную версию интеллект-карты. Возможно, вы всегда хотели разобраться во всех философских отсылках, на которые ссылается Серж

#AI | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1
🐳 Docker vs Docker Compose: когда использовать один контейнер, а когда управлять целым набором?

Сегодня разберемся с популярными инструментами контейнеризации: чем Docker отличается от Docker Compose и когда что использовать для тестирования производительности.

🔍 Docker: одиночный контейнер
Docker
— это платформа, которая позволяет упаковать приложение со всеми зависимостями в изолированный контейнер. По сути, это как виртуальная машина, только намного легче и быстрее.

✅ Когда использовать Docker:
- Для запуска одиночного сервиса (например, только базы данных или только API)
- Если нужно быстро протестировать одну компоненту системы
- Для создания воспроизводимой среды разработки
- Когда важна изоляция процессов

💻 Пример команды:
# Запуск одиночного контейнера с PostgreSQL

docker run -d --name my-postgres -e POSTGRES_PASSWORD=mysecretpassword -p 5432:5432 postgres:13


🚢 Docker Compose: набор контейнеров
Docker Compose
— это инструмент для определения и запуска ОДНОВРЕМЕННО нескольких приложений. С его помощью можно описать всю инфраструктуру в одном файле с расширением .yml.

✅ Когда использовать Docker Compose:
- Когда тестируемая система состоит из нескольких взаимосвязанных сервисов
- Для создания полноценного тестового окружения
- Когда требуется сложная настройка сети между контейнерами
- Для запуска интеграционных и нагрузочных тестов

📄 Пример файла docker-compose.yml для запуска сразу нескольких сервисов:
version: '3'
services:
api:
build: ./api
ports:
- "8000:8000"
depends_on:
- db
environment:
- DB_HOST=db
- DB_USER=postgres
- DB_PASSWORD=mysecretpassword

db:
image: postgres:13
environment:
- POSTGRES_PASSWORD=mysecretpassword
volumes:
- pgdata:/var/lib/postgresql/data

loadtest:
image: jmeter:5.4
volumes:
- ./test-plans:/test-plans
command: -n -t /test-plans/load-test.jmx -l /test-plans/results.jtl
depends_on:
- api

volumes:
pgdata:


🔥 Реальный кейс: нагрузочное тестирование с Docker Compose

Представьте: вам нужно протестировать микросервисную архитектуру под нагрузкой. Вот как это может выглядеть:

1. В docker-compose.yml описываем все микросервисы:
- Базы данных
- Prometheus + Grafana для мониторинга
- Сам сервер, на котором будут проводиться тесты

2. Все сервисы запускаем одной командой:
docker-compose up -d

3. Получаем полноценное тестовое окружение с мониторингом!

🤔Чтобы запустить такую же конфигурации через обычный docker (не docker compose) потребовалось бы писать "простыню" команд для каждого сервиса отдельно


🎁В комментарии приложил файл docker-compose.yml с набором сервисов для сбора метрик

#полезности | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍3🔥2
Коллеги! 👋

Помню, что даже спустя год работы в IT я так до конца не понимал, что такое API, пока мне не привели в пример аналогию из жизни. Сегодня предлагаю нечто особенное — набор аналогий, которые помогут объяснить концепцию API! Каждая карточка — это мостик между сложными технологиями и повседневной жизнью.

💬 Надеюсь, теперь концепция API стала понятнее! Поделитесь своими примерами в комментариях — соберем коллекцию метафор для объяснения техническим и не очень техническим коллегам!


#термин | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
🔍 grep: мощный инструмент для анализа логов в нагрузочном тестировании

Сегодня поговорим про инструмент, который спасает жизни QA-инженеров каждый день — утилиту grep. Это настоящий швейцарский нож для работы с логами, который особенно полезен при анализе результатов нагрузочного тестирования.

📋 Что такое grep?
grep — это консольная утилита для поиска текста по шаблону.

Если простыми словами: grep помогает найти иголку в стоге сена, когда ваш лог-файл весит несколько гигабайт! 🧵

🚨 Быстрый поиск ошибок в логах
Одно из самых частых применений grep в тестировании производительности — быстрый поиск проблем в логах. После нагрузочного теста вы можете быстро проверить наличие ошибок:
grep ERR application.log


Или предупреждений:
grep WRN application.log


В большинстве приложений используются стандартные уровни логирования, поэтому вы также можете искать:
grep ERROR application.log
grep WARNING application.log
grep CRITICAL application.log


💡 Флаг -C: не забывайте про контекст!
Но одна строка с ошибкой часто не дает полной картины.
grep -C 3 ERROR application.log

Эта команда покажет не только строки с ошибками, но и 3 строки до и 3 строки после каждого совпадения. Это дает бесценный контекст для анализа проблемы.

Вы также можете отдельно указать, сколько строк до и после показывать:
-B n (Before): показать n строк до совпадения
-A n (After): показать n строк после совпадения


# 2 строки до и 5 строк после каждой ошибки
grep -B 2 -A 5 ERROR application.log



💬 Знаком ли вам grep? Делитесь, какие еще командные утилиты помогают вам в работе? Для этого природой и были придуманы комментарии 🤔


🎁В комментарии приложил шпаргалку по основным флагам grep


#полезности | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1