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

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

Чат: @lets_load_chat
Автор: @Slabodenyuk_Anatoly
Download Telegram
Часто возникает путаница в понятиях "Аутентификация" и "Авторизация" 🤷🏽‍♀️

Рассказываю про "трипл эй" фреймворк, с помощью которого систему можно сделать закрытой 🛡
Чтобы вы не путались 😊

В карточки - за подробностями ☝️

#термин | 🍩 Донейшн | 📈 Забустить канал
1
🔧 Улучшение работы с докер-контейнерами

В процессе работы с докер-контейнерами вы могли замечать, что при вызове списка всех контейнеров:
docker ps

названия контейнеров отображались не очень понятным образом, например:
NAMES
prometheus-grafana-1
prometheus-node-exporter
prometheus-prometheus-1


Это автоматически сгенерированные названия. Чтобы вмешаться в этот процесс и указать удобное для отображения имя, нужно к сервису в файле docker-compose.yml добавить строку:
    container_name: cadvisor


Пример сервиса с добавленной строкой:
  cadvisor:
image: google/cadvisor
container_name: cadvisor
restart: always
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /data/docker/:/var/lib/docker:ro
command:
- '--housekeeping_interval=10s'
- '-allow_dynamic_housekeeping=false'
- '--docker_only=true'
ports:
- 8080:8080


И теперь при вызове списка контейнеров:
docker ps

отобразится указанное вами название:
NAMES
cadvisor


📝 Совет: хорошей практикой является указывать имя контейнера таким же, как и название самого сервиса. Например, если ваш сервис называется grafana, то имя контейнера также будет grafana.

#полезности | 🍩 Донейшн | 📈 Забустить канал
👍211🤓1
Статья про то, как работает прокси, реверс-прокси и балансировщик нагрузки - с примером из вашего детства и дружелюбным человечком-сервером на превью 😅

#статья | 🍩 Донейшн | 📈 Забустить канал
🔥4👎1🤔1
Кажется, я нашел секрет привлечения аудитории в канал... и это регулярные посты с КОТИКОМ 😺

Думаю, никто не будет против, если технические посты будут разбавляться кадрами из жизни моего кота, который будет напоминать вам о том, что самое главное в жизни - умение расслабляться 😴

Это Марсель (на светских беседах просит называть себя - Мася), и он пришел к вам со своей рубрикой

#КодИКот 🎉 | 🍩 Донейшн | 📈 Забустить канал
7🔥3😇1
Channel name was changed to «Нагрузим IT! 🏋️»
Сегодня разбираем отличия между реляционными и нереляционными базами данных 🖼️

Напомню, что обычно агенты для снятия метрик мониторинга хранят метрики как раз в NoSQL базах данных, откуда потом Grafana их любезно подтягивает и строит для вас красивые графички 📊

Как всегда - все подробности в карточках 🃏

#термин | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4💯2👏1🤝1
Лимиты ресурсов в docker-compose: как укротить аппетиты докера 🐋

Привет, коллеги! 👋
Сегодня разберём «магию» блока resources в файле docker-compose.yml — чтобы ваши сервисы не превратились в хаотичных пожирателей ресурсов, как Мася в 3 часа ночи 🐱
(надеюсь, он не будет читать этот пост)

Зачем это нужно?
Без лимитов ваш докер-контейнер вполне способен:
⚠️ Захватить все ресурсы процессора
⚠️ Захватить все ресурсы оперативной памяти
⚠️ Внештатно завершить свою работу из-за исключения
Out Of Memory 

(это значит, что вся оперативная память была скушана)

Чтобы ваш контейнер понимал, сколько ресурсов ему полагается, нужно прописать эту информацию в блоке:
    deploy:
resources:


🖼️ Пример полного файла docker-compose.yml:
services:
my_service:
container_name: my_service
image: my_image:latest
deploy:
resources:
limits:
cpus: '1' # Где 1 - означает одно ядро CPU
memory: 1G # Можно указывать, как в Мегабайтах(M), так и в Гигабайтах(G)


🚨 Частая ошибка:
Путают limits и reservations (резервирование ≠ ограничение!)
    deploy:
reservations:
cpus: '0.25'
memory: 20M

Блоку reservations будет посвящен отдельный пост

Был ли у вас опыт настройки лимитов?
Делитесь кейсами в комментариях или в нашем чатике 💬

👉 Реакции от вас = сигнал, что тема полезна!

#полезности | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥21💯1🤓1
Думаю, многие из вас слышали про Китайского «убийцу» всех существующих Нейросетей (в том числе, и ChatGPT) - deepseek

Попользовавшись несколько дней, хотел бы поделиться впечатлениями и дать советы по использованию:

Плюсы:
это БЕСПЛАТНАЯ нейросеть (как будто, после этого пункта можно заканчивать пост 😅)
работает без VPN в России
по тестам сопоставима с самыми передовыми нейросетями на данный момент
(сравнительная таблица на скриншоте)
сам код Нейросети открыт, и любой желающий может развернуть её локально - ссылка на GitHub
отвечает быстрее, чем ChatGPT и ответы более креативные:
написал один и тот же промпт для каждой нейросети (результаты на скриншоте):
Напиши стих про котика, который хочет устроиться работать инженером по нагрузочному тестированию, но у него лапки

есть функция «Размышления» (об этом далее)
это БЕСПЛАТНАЯ нейросеть (подумал, нужно повторить ещё раз 😉)

Минусы:
Оказалось, что создатели deepseek сливали данные пользователей (случайно или специально 🤷)
Утверждается, что раскрытие конфиденциальных данных произошло из-за полностью открытой базы, которая была размещена на oauth2callback.deepseek.com:9000 и dev.deepseek.com:9000.
В базе содержался «значительный объём истории чатов, внутренних данных и конфиденциальной информации». Речь в том числе и о потоках журналов, эксплуатационных данных и секретных частях API.

Вот тут подробнее
(я вас предупредил ⚠️)

Не рисует картинки (ну, это не так критично для нашей работы, правда? 🤷‍♂️)

Теперь немного рекомендаций по использованию:
💡Не забудьте включить функцию DeepThink (R1)
Эта функция — настоящая жемчужина deepseek. Она позволяет нейросети "размышлять" над задачей перед тем, как выдать окончательный ответ.
DeepThink работает так:
Сначала нейросеть создаёт несколько вариантов решения или ответа.
Затем анализирует их, выбирая наиболее подходящий или комбинируя лучшие идеи.
В процессе вы можете наблюдать за её "мышлением" — она показывает промежуточные шаги, что особенно полезно для понимания логики её выводов.

💡deepseek - "думающая" модель, а для таких модель промпт нужно составлять иначе
Дайте тонну контекста
Заранее опишите, ЧТО именно вы хотите получить, и в меньшей степени - КАК вы этого хотите
Ограничивайте формат ответа
Вот тут подробнее

Итог:
Deepseek — мощный инструмент, который может стать вашим надёжным помощником в работе. Особенно если вы цените скорость, креативность и открытость технологий. Однако помните о возможных рисках с конфиденциальностью данных.

💬 А вы уже пробовали deepseek? Делитесь впечатлениями в комментариях!

P.S. Пока писал этот пост, вышла "убийца убийцы" - другая китайская нейросеть Qwen2.5 (о ней в следующий раз) и в ChatGpt также прикрутили функцию «Размышления» (у них она называется "Обоснуй")

#AI | 🍩 Донейшн | 📈 Забустить канал
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Со следующей недели посты в канал вернутся ✍️

Организм хотел поболеть. Кто я такой, чтобы ему запрещать 😅
👍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