Java MX Calibration Services technology provides tools and API for building distributed, java-based, modular and dynamic solutions for managing and monitoring devices, applications, and service-driven networks. Based on SUN standards we are suitable for adapting legacy systems, implementing new management, monitoring & testing solutions, and pluggable in the future. Based on Java Management Extensions API Java MX Calibration Services implements Diagnostic & Calibration functionality in Java SE/EE and Spring.io Applications as part of Performance Management for individual Best Fit Deployments and essential Visibility into Java Transactions across your infrastructure. You identify performance problems and balance your Java Virtual Machine. Java Performance depends on CPU & Memory allocation. Tuning Performance is a calibration Process in reference to stability. JMX Calibration Services addresses this with Monitoring and Run-time Customizing of key parameters. Fail-over strategies are implemented and customizable while calibration process. JMX Calibration Services are pure Java SE Component for high traffic environments. By architecture, it runs on all Java Containers without any modification. JMX Calibration Services supports JMX Monitoring and JMX Run-time Customizing. Log-Profiling is supported via file logging using the java.util.logging facility. Using JMX Calibration Services no hardware or software architecture changes required. The Implementation takes care about the relationships between Java Server Threads and the Java Memory Model(JMM) in multi core hardware environments. Java Calibration Services are pluggable over calibration-java-mx-6.72.jar registration in [Web-Inf]/lib directory of your [Web] Application and setup AspectJ. Specific critical Ressources are configured as aspects via aspectj configuration in META-INF/aop.xml to Nonfunctional System Components. So critical Thread Informations are available over her standard JMX Components and associated with Java Calibration Services MX Beans which are registered on local MBeanServer with her JMX ObjectNames. Declarative AOP Aspectj Configuration with specified Profiling Criteria. Defined Code Sequences will be monitored via MX Beans Attributes at Runtime. At the end of Calibration Process our Code Analysis will find best fit Source Code Sequences in relation to functional requirements. 1 2 3 4 5 6 7 8 <aspectj> <aspects> <concrete-aspect name="ServiceModelAspect" > <pointcut expression="execution(* angular.domain.ServiceModel.getEcho(..))" /> </concrete-aspect> </aspects> ... </aspectj> AOP Configuration in /META-INF/aop.xml (classpath included) JConsole MBeans View with Profiling nonfunctional AOP Calibration MXBeans Attributes for ASPECTJ POINTCUT EXPRESSION 01 02 03 04 05 06 07 08 09 10 public class ServiceModelUnitTest { /** The service model. */ private final ServiceModel serviceModel = new ServiceModel(); /** The echo. */ private final static String ECHO = "echo"; @Test public void testServiceModel() throws InstanceNotFoundException, MalformedObjectNameException, AttributeN 11 12 13 14 15 16 17 ReflectionException, MBeanException, NullPointerException, IOException { assertEquals(serviceModel.getEcho(), ECHO); //NONFUNCTIONAL JUnit TESTING using AOP Configuration ©Java-MX-Calibration-Services, Thomas Merten JMXProfiler4UnitTest.checkMethodRessources("/junit.properties"); } ... JUnit Test Case angular.domain.test.ServiceModelUnitTest with AOP MXBeans Attributes [JMXProfiler4UnitTest - a Java MX Calibration Framework Supportclass] 1 2 3 4 CONCRETE_ASPECT_NAME=ServiceModelAspect POINTCUT_EXPRESSION=ServiceModel.getEcho MethodAllocatedBytes=1352 ExecutionTime=40000000 AOP Configuration in junit.properties File 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 ------------------------------------------------------T E S T S ------------------------------------------------------Running angular.domain.test.ServiceModelUnitTest ------------------------------------------------------JAVA MX CALIBRATION SERVICES NonFunctional Dynamic Code Analysis - © 2015 Thomas Merten ------------------------------------------------------ASPECTJ NAME: ServiceModelAspect POINTCUT EXPRESSION: ServiceModel.getEcho JMX ObjectName: "ServiceModelAspect:type=ServiceModel.getEcho" ------------------------------------------------------Executions: 1 ExecutionTime(ns): 36682816 FailedExecutions: 0 MethodAllocatedBytes(byte): 1352 ThreadAllocatedBytes(byte): 62059 ------------------------------------------------------NONFUCNTIONAL TESTING OK, "checkMethodRessources" MethodAllocatedBytes: 1352 <= 1352 NONFUCNTIONAL TESTING OK, "checkMethodRessources" ExecutionTime: 36682816 <= 40000000 Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 Output JUnit Test Case JMX Run-time Monitoring to get the Best Fit profiling for your environment is supported. See the parameter values at run in real-time to find Best Fit Settings for your System. Monitor system changes in relation to your source code changes at Attribute level (in Attribute Chart mode): ThreadAllocatedBytes MaxThreadAllocatedBytes MinThreadAllocatedBytes MethodAllocatedBytes MinMethodAllocatedBytes MaxMethodAllocatedBytes ThreadUserTime ThreadCpuTime ThreadSystemTime ExecutionTime MaxExecutionTime MinExecutionTime FailedExecutions ThreadCount Java MX Calibration Services requires: Java SE 1.5 For Profiling & Runtime Customizing[Best Fit Calibration]: enabled JMX connection Some Features like Endpoint Heap Memory Allocation Measuring requires Java SE 1.7 Integration & Development Thread JMX Beans based on Java Memory Model(JMM) Engineering Implementation takes care about the relationships between Java Server Threads and the Java Memory Model(JMM) in multi core hardware environments. Java MX Calibration Services are pluggable over calibration-java-mx-6.72.jar registration in classpath of your Java Application and administrated using Aspectj registration and configuration in /META-INF/aop.xml. Is configured as Aspect and mapped via pointcut expression to specific individual critical Ressource to profile. So critical Thread Informations are available over his standard JMX Components and associated with Java MX Calibration Services JMX Beans. MAVEN Environment needs to install calibration-java-mx-6.72.jar via: mvn install:install-file -DgroupId=calibration.java.mx -DartifactId=calibration-java-mx -Dversion=6.72 -Dpackaging=jar -Dfile=YOUR_COMPLETE_PATH/calibration-java-mx-6.72.jar and register in pom.xml as Dependency: 1 2 3 4 5 6 <dependency> <groupId>calibration.java.mx</groupId> <artifactId>calibration-java-mx</artifactId> <version>6.72</version> <scope>runtime</scope> </dependency> MAVEN Project pom.xml with Java MX Calibration Setup JVM for using AspectJ Individual Diagnostic & Calibration functionality for Java SE/EE Web Applications Standard Performance Management for individual Best Fit Deployments Essential Visibility into Java Web Transactions across your infrastructure Identify performance problems and balance your Java Web Server via JMX supported Tools Monitoring and Run-time Customizing with build-in: - functional application components MXBeans - nonfunctional system components MXBeans SUN Standard Path: JMX API & JMX Tools =>Part of IBM/SUN Java SE >2008 SUN JConsole pluggable JMX Calibration Services MXBeans Integration without hardware or software architecture changes Fail-over functionality JUnit Integration for automated testing Usability in development, stage, test & runtime environments AspectJ, URL - & Thread-Id based connectors - use in ANT & MAVEN Environments Java MX Calibration Services is open source but not free. As Member of our Strong Hands on Community you are eligible: Use in Evaluation Environment is possible - with the requirement that any copy acknowledges the product owner. For use in Production Environment get in touch with us(Thomas Merten) © Thomas Merten. Alle Rechte vorbehalten. Alle Warenzeichen sind Eigentum ihrer jeweiligen Inhaber. Angaben in diesem Dokument dienen nur der Produktbeschreibung und stellen keine zugesicherten Eigenschaften im Rechtssinn oder Garantien dar. Garantien bedürfen einer ausdrücklichen und schriftlichen Bestätigung. Änderungen und Anpassungen vorbehalten. Limited warranty: Java MX Calibration Services Software and Documentation are "as is" without any warranty as to their performance, merchantability or fitness for any particular purpose. The licensee assumes the entire risk as to the quality and performance of the software. In no event shall Java MX Calibration Services or anyone else who has been involved in the creation, development, production, or delivery of this software be liable for any direct, incidental or consequential damages, such as, but not limited to, loss of anticipated profits, benefits, use, or data resulting from the use of this software, or arising out of any breach of warranty. This includes, but is not limited to, interruption of service, loss of classroom time or loss of consulting profits from the use of these programs. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. All professional activities currently concentrate on Hybris+Intershop Core/eCommerce Profiling and Monitoring & IaaS Process Architectures. We are also interested in Oracle Siebel System Integrations. Previously, worked in the ICT industry as Siebel Core Consultant, presently working as Management Consultant and Software Development Process Manager in Europe. Check out this profile and references to see if I may be able to help you. I am the CIO & owner of Java MX Calibration Services and contribute with this Project to the Java Platform at SUN Source. thomas.merten@web.de In the cooperation community with our clients, we will established an ideal basis to react to the concurrence of current changes on the online market platforms. That is why the joint development of the Java MX Calibration Services solutions as Open Cooperation Community Platform, meeting ever-changing requirements, contributes sustainably to the competitive edge of our business clients. Moreover with our Early Bird Partnership, we offers company-specific integrated Quality Assurance process consultation and solutions with an ideal IT implementation within the cooperation community. Our expert knowledge, our implementation expertise and our experience from long-time cooperation with many e-commerce & high technology industry companies make us your ideal business partner. T-Systems International | Siebel Ondemand D&B Integration T-Mobile | Siebel Enterprise Mobile Accelerator hybris | ORACLE Siebel D&B Direct API Extension GAS-X | Gasdatenmonitoring