java devops
-
Karaf в Kubernetes
Модульный karaf в микросервисе. Мозг в трубочку. А почему бы не кубер в bundle карафа? А может сразу windows в bundle? (были опыты запуска урезанного windows в bundle). Речь идет о модульной java. Модульная java? А это она! Karaf это реализация OSGi. OSGi - шина с плагинами (java-модулями, в терминах OSGi называется bundle), ктр. взаимодействуют между собой. Один bundle отправляет сообщение в шину через интерфейс, предоставленный шиной, а другой/другие bundle, ктр. заявляют, что могут реализовать интерфейс, обрабатывают сообщение. При этом источник даже не знает кому и сколько читателей. И еще одна фишка Karaf (может быть основная) замена функциональности без остановки всего сервиса.
-
Работа с log
Разработчик сам должен позаботиться о качестве логов, информации из stacktrace будет маловато. Интересны условия возникновения ошибки. Однозначно нужны значения переменных в момент возникновения ошибки, т.к. эти данные потом нигде не получить. Примитивный пример:
-
Создание fat jar файла
Оглавление:
-
Тестирование REST
В заметке описаны инструменты тестирования REST и примеры использования.
А чем, собственно, проблема?
-
Установка Kafka в Linux
Установка описана в https://www.dmosk.ru/miniinstruktions.php?mini=kafka-linux.
Дистрибутив Kafka: https://downloads.apache.org/kafka/
Скачать https://downloads.apache.org/kafka/3.6.2/kafka_2.12-3.6.2.tgz -
Установка нужной версии Java
В системе настройки сделаны для java 11. В путях linux указана java 11. Нужно настроить maven проект на java 17.
$ java -version openjdk version "11.0.18" 2023-01-17
Нужна java 17, для этого нужно установить JAVA_HOME.