Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-8601

[Broker-J] Instrumentation agent

    XMLWordPrintableJSON

Details

    • New Feature
    • Status: Closed
    • Minor
    • Resolution: Implemented
    • qpid-java-broker-8.0.6
    • qpid-java-broker-9.0.0
    • Broker-J
    • None

    Description

      Broker model objects heavily rely on java reflection. 

      Java version 7/8 introduced reflection alternatives allowing to access class fields as well as call class methods. Brief review of those alternatives can be found in this blog post.

      There are further changes coming, e.g. JEP 416 (implemented in Java 18), having as a goal reimplementation of java.lang.reflect.Method, Constructor, and Field on top of java.lang.invoke method handles. Jackson databind library already has an issue directed to replace reflection calls with method handles. Similar approach is used in spring data framework as well.

      We suggest to implement a static instrumentation object, which will replace reflection method invocation with the invocations of static final MethodHandle instances.

      Attachments

        Activity

          People

            Unassigned Unassigned
            daniel.kirilyuk Daniil Kirilyuk
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: