Перейти к основному содержимому

237 записей с тегом "DevOps"

Посмотреть все теги

· 3 мин. чтения

1. Введение

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

С другой стороны, мы можем использовать систему мониторинга, управляемую аннотациями, например Dropwizard Metrics .

В этом руководстве мы создадим простой класс, используя Metrics AspectJ и аннотацию Dropwizard Metrics @ Timed .

2. Настройка Мавена

· 9 мин. чтения

1. Введение

Приложения иногда зависают или работают медленно, и определение основной причины не всегда является простой задачей. Дамп потока предоставляет моментальный снимок текущего состояния запущенного процесса Java . Однако сгенерированные данные включают несколько длинных файлов. Таким образом, нам нужно будет проанализировать дампы потоков Java и найти проблему в большом куске несвязанной информации.

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

2. Потоки в JVM

JVM использует потоки для выполнения каждой внутренней и внешней операции. Как мы знаем, процесс сборки мусора имеет свой собственный поток, но и задачи внутри Java-приложения создают свои собственные.

· 5 мин. чтения

1. Обзор

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

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

В этом коротком уроке мы рассмотрим, как отключить проверки Sonar. Хотя можно изменить набор правил на сервере SonarQube, мы сосредоточимся только на том, как управлять отдельными проверками в исходном коде и конфигурации нашего проекта.

2. Пример нарушения

· 10 мин. чтения

1. Введение

В предыдущей статье мы объяснили разницу между образами Docker и контейнерами Docker. Вкратце: изображение похоже на класс Java, а контейнеры — на объекты Java.

В этом уроке мы рассмотрим различные способы удаления образов Docker.

2. Зачем удалять образы Docker?

Docker Engine хранит образы и запускает контейнеры. Для этой цели Docker Engine резервирует определенный объем дискового пространства в качестве «пула хранения» для образов, контейнеров и всего остального (например, глобальных томов или сетей Docker).

· 3 мин. чтения

1. Обзор

Каждое приложение возвращает код выхода при выходе; этот код может быть любым целым числом, включая отрицательные значения.

В этом кратком руководстве мы узнаем, как мы можем возвращать коды выхода из приложения Spring Boot.

2. Весенняя загрузка и коды выхода

Приложение Spring Boot завершится с кодом 1 , если при запуске возникнет исключение. В противном случае при чистом выходе он предоставляет 0 в качестве кода выхода.

· 3 мин. чтения

1. Обзор

В этой статье мы узнаем разницу между обнаружением bean-компонентов в Quarkus и классическими средами Jakarta EE. Мы сосредоточимся на том, как обеспечить, чтобы Quarkus мог обнаруживать аннотированные классы во внешних модулях.

2. Почему Quarkus нуждается в индексировании

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

Таким образом, расширение приложения с помощью пути к классам в среде выполнения больше невозможно. Индексация вступает в игру, когда во время сборки собираются метаданные. Индексация означает хранение метаданных в индексном файле. Это позволяет приложению быстро считывать его при запуске или всякий раз, когда это необходимо.

· 5 мин. чтения

1. Обзор

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

В этом руководстве мы научимся удалять контейнеры Docker, используя разные подходы.

2. Зачем удалять контейнер Docker?

Когда контейнер Docker завершает свое выполнение, он переходит в состояние выхода . Такие контейнеры не потребляют ЦП или памяти, но все равно используют дисковое пространство машины. Кроме того, остановленные контейнеры не удаляются автоматически, если мы не используем флаг –rm при запуске контейнера Docker.

· 7 мин. чтения

1. Обзор

Контейнер Docker — это экземпляр образа Docker, внутри которого выполняется некоторый процесс. Изменение состояния этого процесса также влияет на поведение контейнера. Таким образом, контейнер может находиться в разных состояниях на протяжении всего жизненного цикла.

В этом руководстве мы узнаем обо всех возможных состояниях контейнера Docker.

Давайте сначала рассмотрим, как найти состояние контейнера Docker, а затем пройдемся по различным этапам контейнера.

2. Найдите текущее состояние контейнера Docker

· 6 мин. чтения

1. Введение

Apache Curator — это Java-клиент для Apache Zookeeper , популярного сервиса координации распределенных приложений.

В этом руководстве мы представим некоторые из наиболее важных функций, предоставляемых Curator:

  • Управление подключениями — управление подключениями и политиками повторных попыток.
  • Асинхронный — улучшение существующего клиента за счет добавления асинхронных возможностей и использования лямбда-выражений Java 8.
  • Управление конфигурацией – наличие централизованной конфигурации для системы
  • Строго типизированные модели — работа с типизированными моделями
  • Рецепты — реализация выборов лидера, распределенные блокировки или счетчики

2. Предпосылки

· 5 мин. чтения

1. Обзор

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

В этом руководстве мы узнаем, как настроить Apache Kafka с помощью Docker.

2. Настройка одного узла