Introducing perfino
2014-06-03
Ingo Kegel 작성
Today we're releasing a major new product: perfino
is a JVM monitoring tool for in-production use. Over the years, we have lost count of the number of times that our
customers have asked us on how to best deploy JProfiler in production. While our standard response was to recommend a
monitoring tool, our customers were not so easily dissuaded. They wanted the power of JProfiler to solve their
particular problems.
Out of this dilemma, the idea for perfino was born. Would it be possible to develop a monitoring tool that could be used
in production, yet provide a way to escalate from monitoring to profiling if necessary? We are firmly convinced that
perfino succeeds with respect to this original goal and provides you with a layered defence in depth. When a problem
becomes more difficult to solve with monitoring techniques, perfino offers low-risk, low-overhead native JVMTI sampling
to get a picture of the entire JVM. If even that is not enough, perfino offers an easy way to attach JProfiler to a
problematic JVM. At that point, you have the full arsenal of a Java profiler at your disposal.
However, the much larger part of perfino is not its emergency handling, but its monitoring capabilities. Here, we wanted
to make a difference as well. perfino uses a Java agent with ultra-low overhead and measures what is called "business
transactions" in the APM space. Business transactions capture important method calls with specially constructed names
that help you to interpret what is going on in your application.
For business transactions, we brought in successful concepts from the profiling space and integrated them into perfino.
For example, transactions are shown in a call tree and you can see hot spots of transactions. With perfino, it is
possible to define many transactions that are nested. This gives you more informational depth and correspondingly more
insight than just the list of top-level business transactions that is common for APM tools.
The amount of useful information in an APM tool is directly related to the amount and quality of the recorded business
transactions. This is why we expended a lot of energy on the business transaction engine and the configuration of
business transactions in the perfino UI. Also, we wanted to make it really easy to define business transactions directly
in your code. The DevOps annotations offered by perfino are a great way to achieve this. Rather than thinking about
monitoring as external to the application, you just annotate methods of interest.
The features mentioned above rotate around measuring method calls. Of course, a monitoring tool needs to do a lot more
and we’ve strived to make perfino great in all these aspects: Telemetries, policies, triggers, alerts, end user
experience monitoring and lots more. Take a look at the feature list
or - even better - try it out in our trial version
or on your own machines. Tell us what you think and what you would like to see in future versions.

perfino is a powerful APM solution today, but our vision for perfino is not done yet. There are many more things to come
and we hope you’ll bear with us.
아카이브
11월/1
9월/3
2025/20
HotSpot의 반격: JEP 544, GraalVM 시작 성능 독점의 끝인가?SBOM이 15개월 후 의무화됩니다. 당신의 SBOM은 아마 잘못되어 있을 것입니다.Apache Fory JSON을 4.5배 더 빠르게 만든 방법
8월/3
Java vs. Kotlin: 누가 (역)직렬화를 더 빠르게 할 수 있을까?Apache Fory는 왜 그렇게 빠른가? Java 직렬화 프레임워크 5종 프로파일링jvmguard 소개: 자동 프로덕션 프로파일링
7월/2
4월/3
JProfiler MCP로 jclasslib 성능을 두 배로 개선한 방법Claude가 코드를 읽고서는 절대 찾을 수 없었던 핫스팟JProfiler 16.1: 이제 AI 에이전트가 Java 애플리케이션을 프로파일링할 수 있습니다
3월/2
2월/1
10월/1
8월/1
7월/2
2024/5
2023/7
The power of async tracking in JVM profilingWebsite refresh: Visual updates, dark mode, and semantic search for docs
6월/4
All our artifacts are now published on Maven CentralJEP 493 follow-up: install4j 11.0.4 is ready for separate JMOD bundles in Eclipse Temurin 24.0.2JProfiler tips roundup May 2025JVM performance watch roundup May 2025
5월/3
JProfiler tips roundup April 2025JVM performance watch roundup April 2025Heap Walker scripting for snapshot analysis
4월/8
Capturing and comparing MBean states with JProfilerAdvanced SSH remote profiling with JProfilerProfiling Java applications in VS Code with JProfilerAdvanced Kafka probe configuration in JProfilerProfiling Kafka #1 – Message Flow & Hot SpotsBringing JProfiler to VS Code with Kotlin Multi-PlatformCaching auto-provisioned install4j distributions in CI pipelinesCross-platform JRE bundle creation under threat from JEP 493
1월/1
9월/5
2022/10
Garbage collector analysis in JProfilerRecording JFR snapshots with JProfilerEnhanced JFR snapshot analysis with JProfilerWorking with probe events in JProfilerCustomizing telemetries in JProfiler
3월/1
1월/1
12월/2
11월/3
2021/2
2020/1
2019/1
2018/3
2017/5
2016/1
2015/10
Using sunburst diagrams for understanding Java memory consumptionUsing flame graphs when profiling Java applicationsProfiling a Netty server
10월/1
9월/1
8월/2
7월/1
11월/5
2014/3
2013/3
2012/5
2011/13
Analyzing specific parts of the call treeAnalyzing incoming and outgoing calls of a methodCollapsing recursions in the call treeRemote profiling through an SSH tunnelFinding JDBC connection leaks
6월/5
12월/1
10월/2
9월/5
2010/8
2009/14
Using the "Run interceptor script" trigger actionCreating a custom probeInspections in the heap walkerHeap walker graph: Finding paths between selected instancesFiltering in the reference view of the heap walker
8월/4
Request trackingAnalyzing long-running AWT events with JProfilerProbes overviewCPU profiling: Sampling and instrumentation
2월/1