1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/huoyo-ko-time

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 12 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 18.04.2025 09:23 ab23abe

Благодарим тех, кто тихо поддерживает проект KoTime, ставя звезды и давая советы, благодаря вам проект постепенно улучшается

Не мешайте мне, я хочу поддержать автора, чтобы он работал допоздна и улучшал проект

Онлайн-презентация PPT

KoTime

Простой, удобный, без затрат на обучение мониторинг

Легковесный инструмент для отслеживания графа вызовов методов на основе Spring Boot, который поможет вам легко найти методы с низкой производительностью.

- ✅ Отслеживание Java-методов и подсчет времени их выполнения - ✅ Отображение путей методов - ✅ Поиск возникших исключений в методах - ✅ Отправка вам электронной почты после обнаружения метода, который работает сверхурочно - ✅ Горячая загрузка онлайн: вам не нужно перезапускать - ✅ Управление потоками: отображение информации о потоках, включая обнаружение мертвых замков - ✅ Пространство JVM: Eden, Survivor, OldGen и Metaspace - ✅ Простота использования: вам не нужно тратить дополнительные затраты на обучение - ✅ Достаточно добавить зависимость pom: вам не нужно тратить дополнительные затраты на развертывание---

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

  • ✅ В реальном времени отслеживает методы, статистику времени выполнения
  • ✅ Веб-отображение графа вызовов методов, визуализация узких мест
  • ✅ Отслеживание системных исключений, точное определение метода
  • ✅ Уведомление по электронной почте при превышении времени выполнения метода, не требуется постоянное наблюдение
  • ✅ Горячая загрузка онлайн: не требуется перезапуск для обновления кода
  • ✅ Управление потоками: реальное отслеживание информации о потоках и состояние потоков, а также обнаружение мертвых замков
  • ✅ Статистика пространства JVM: Eden, Survivor, OldGen и Metaspace
  • ✅ Простота использования, без затрат на обучение
  • ✅ Достаточно зависимости pom, без вторжения в код, без дополнительных затрат на развертывание

Без затрат на обучение, прямое использование, чтобы программисты могли использовать свое время и мысли для создания.222

Оригинальный код

Gitee

GitHub

Документация

Английский текст/ENGLISH

Инструкция по использованию## Визуализация данных

  1. Статистика вызова интерфейсов

По цвету можно определить, сколько интерфейсов требуют оптимизации. Красный цвет указывает на необходимость оптимизации, зелёный — на нормальное состояние.

Вставка изображения

  1. Обзор списка интерфейсов

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

Вставка изображения

  1. Подробная информация о вызове

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

Вставка изображения

  1. Уведомления по электронной почте

С версии v2.2.5 включена функция уведомлений по электронной почте. Когда время выполнения метода превышает пороговое значение, можно выбрать отправку уведомления по электронной почте.

Вставка изображения

  1. Управление потоками

С версии v2.3.9 включена функция управления потоками. Можно отслеживать состояние потоков и просматривать информацию о стеке потоков.

Вставка изображения Вставка изображения

Основные версии

Детали обновления версий## Причины создания проекта

Ранее в одном проекте возникла ситуация, когда некоторые функции отвечали слишком долго.

Как опытный разработчик, я обычно открываю браузер, чтобы определить, какой интерфейс вызывает проблемы, затем ищу контроллер, сервис и DAO-слои...

Я просматривал каждый слой, каждый метод, добавлял статистику времени выполнения...

За один утренний рабочий день я нашёл проблему, которую можно было исправить за пять минут, но большую часть времени я тратил на поиск проблемы, что было неприемлемо для меня.

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

К моему удивлению, я не смог найти подходящий открытый фреймворк (возможно, из-за моего уровня поиска, который, конечно, я не признаю). Для моего небольшого проекта требуется следующее:

Интерфейсный или методический подход, простой и понятный

Простота использования, без излишних затрат на поддержку

Визуализация трассировки, без избыточной информации о стеке вызовов (меня интересует только мой код, избыточные данные о стеке вызовов ухудшают визуальное восприятие)

Почему не использовать Skywalking, Pinpoint и Arthas?Skywalking — отличный инструмент для мониторинга производительности распределенных приложений (уважение к Wu Da Shen), но он больше сосредоточен на проблемах между распределенными системами, а не на деталях проекта. Кроме того, его внешний вид...

Pinpoint, как любитель внешнего вида, я всегда очень любил, но его дизайн интерфейса для трассировки вызовов заполняет экран кодом, что затрудняет поиск моего метода (субъективное мнение, не нравится — не пиши).

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

И для многих малых и средних компаний это просто единичный проект, который не требует излишних затрат на поддержку и развертывание!

Таким образом, появился этот небольшой проект, если вам понравится, пожалуйста, оставьте звездочку, огромное спасибо!

Особые примечания

  1. Проект разработан на Java 8, другие версии не проверялись, если обнаружите какие-либо ошибки, пожалуйста, сообщите!

Информация о правах> 1. Авторские права на этот проект принадлежат автору и распространяются под лицензией LGPL-2.1;

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

  2. Однако не разрешается использовать этот проект для коммерческих целей после его модификации (если только не получено разрешение от автора);

  3. Все вышеуказанное относится к открытой версии, профессиональная версия требует лицензии от автора.> Проще говорить: открытая версия всегда бесплатна для использования, это не изменится, но не разрешается использовать модифицированную версию для коммерческих целей.

Отличные вкладчики

Подробнее здесь

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/huoyo-ko-time.git
git@api.gitlife.ru:oschina-mirror/huoyo-ko-time.git
oschina-mirror
huoyo-ko-time
huoyo-ko-time
spring2