Новости
Команда Swift анонсирует Swift Profile Recorder
Swift Profile Recorder использует другой подход: он запускается из вашего процесса и реализован просто в виде пакета Swift.
Swift Profile Recorder — инструмент для внутрипроцессного профилирования для сервисов Swift, теперь доступен как проект с открытым исходным кодом.
Профилирование — это мощный метод анализа производительности, использования ресурсов и поведения ваших приложений. С помощью Swift Profile Recorder профилирование теперь можно добавить к вашим сервисам Swift, просто добавив зависимость пакета без дополнительной настройки. Swift Profile Recorder позволяет:
- Внедрять профилирование без дополнительных привилегий или системных зависимостей, что позволяет добавлять профилирование в различные вычислительные среды с ограниченными правами.
- Собирать образцы данных с помощью curl, что позволяет легко читать вывод профилировщика через конечную точку HTTP без необходимости изучения специальных инструментов, таких как perf, sample, DTrace или eBPF (bpftrace).
- Интегрироваться с существующими инструментами визуализации и анализа благодаря поддержке множества отраслевых стандартных форматов, включая формат скриптов Linux perf, формат файлов pprof и конечных точек /debug/pprof/profile, а также свёрнутый формат, используемый оригинальным FlameGraphs.
Apple уже несколько лет использует Swift Profile Recorder в масштабных приложениях для управления и отладки сервисов Swift в рабочей среде. Помимо недавнего анонса swift-parca, экосистема серверов Swift теперь включает в себя множество инструментов и подходов для профилирования.
Профилирование с Swift Profile Recorder
Современные операционные системы предлагают инструменты для профилирования приложений или даже всей системы. Примерами служат Instruments от Apple и perf от Linux. Кроме того, существуют системы ядра, такие как DTrace или eBPF, которые можно использовать для профилирования приложений.
Сообщество недавно представило проект swift-parca, который подключается к Parca Agent, используя Parca Agent и eBPF в Linux для непрерывного профилирования вашего приложения. Затем эти образцы собираются на централизованном сервере Parca. Это отличный инструмент, который сегодня могут использовать многие разработчики. Однако есть несколько ограничений, которые могут повлиять на более широкое внедрение:
- Для подключения к другому процессу или загрузки программы eBPF/DTrace в ядро требуются специальные привилегии.
- Для реализации этой функции в дистрибутивах Linux могут потребоваться дополнительные компоненты.
- Доступные технологии профилирования существенно различаются в разных операционных системах.
Чтобы позволить большему числу команд профилировать свои приложения, Swift Profile Recorder использует другой подход: он запускается из вашего процесса и реализован просто в виде пакета Swift. Это означает, что он может профилировать ваш код даже в средах, где внешние инструменты профилирования не работают. Вам также не потребуется устанавливать другие системные компоненты, вам не потребуются дополнительные привилегии, и этот подход может работать в разных операционных системах — в настоящее время Swift Profile Recorder поддерживает macOS и Linux.
-
Аналитика магазинов2 недели назад
Мобильный рынок Ближнего Востока: исследование Bidease и Sensor Tower выявляет драйверы роста
-
Интегрированные среды разработки3 недели назад
Chad: The Brainrot IDE — дикая среда разработки с играми и развлечениями
-
Новости4 недели назад
Видео и подкасты о мобильной разработке 2025.45
-
Новости3 недели назад
Видео и подкасты о мобильной разработке 2025.46

