Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

EclipseLink/DesignDocs/321763

< EclipseLink‎ | DesignDocs
Revision as of 13:23, 5 August 2010 by James.sutherland.oracle.com (Talk | contribs) (Requirements)

Design Specification: Performance Monitor

ER 321763

Feedback

Document History

Date Author Version Description & Notes
2010-08-05 James 0.1 Draft

Project overview

We currently have two profilers, the PerformanceProfiler and the QueryMonitor. The PerformanceProfiler provides detailed information, but is not very useful in a server environment. The QueryMonitor is useful in a server environment, but does not provide detailed information. EclipseLink already contains an extensive profiling and monitoring API that was previously developed under TopLink for Oracle DMS, but does not provide a profiler implementation that makes use of these APIs.

The PerformanceMonitor's goal is to somewhat unify the PerformanceProfiler and QueryMonitor to provide detailed profiling and monitoring information in a mutli-threaded server environment.

Concepts

Profiling is mainly concerned with timing information (time spent in cache, querying), monitoring is mainly concerned with state information (cache size, number of transactions).

Requirements

  • Make use of the existing SessionProfiler API that was designed for DMS.
  • Support multi-threading.
  • Support a server environment.
  • Be configurable without any Java code.

Design Constraints

Functionality

Testing

Output of profiler should be analyzed under SRG test run, performance tests, and in JEE performance benchmark runs.

API

  • ProfilerType - PerformanceMonitor
  • PerformanceMonitor
    • getOperationTimings()
    • setDumpTime(int)

Config files

  • persistence.xml
    • <property name="eclipselink.profiler" value="PerformanceMonitor"/>

Documentation

Should be documented under performance section of JPA user guide.

Open Issues

Issue # Owner Description / Notes
1 Are there additional metrics to profile?

Decisions

Issue # Description / Notes Decision

Future Considerations

  • Additional metrics.
  • JMX support.

Copyright © Eclipse Foundation, Inc. All Rights Reserved.