Wednesday Aug 26, 2015

9 tools to help you with Java Performance Tuning by Alex Marshall

clip_image001Previously I wrote an article about 5 tools to help you write better java code which helped to improve our code but also our productivity. At IDR Solutions we are always looking at ways to improve our code and lately we have been looking at improving our java code in our PDF to HTML5 Converter and Java PDF Library and I noticed that recently one of the areas of focus as been on improving and Java Performance.

In this article I will be taking a look at 9 tools to help you with Java Performance Tuning, some are used by us at IDR Solutions and others that we may use for personal projects.

NetBeans Profiler

The NetBeans profiler is a modular add on which is used to provide the profiling functionality for the NetBeans IDE, which is an open-source integrated development environment. NetBeans IDE supports development of all Java application types (Java SE (including JavaFX), Java ME, web, EJB and mobile applications) out of the box.

This profiler includes functions such as CPU, memory and threads profiling but also provides additional tools and functionality for basic JVM monitoring, which is extremely useful for developers who need to solve memory or performance-related issues. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Wednesday Jun 17, 2015

Diagnosing performance issues front to back-end in WebLogic Server applications with Java Flight Recorder by Julio Mendez


clip_image002Introduction

The Java Mission Control and Java Flight Recorder are relatively new tools that have extended greatly the diagnostics capabilities of the Java platform. They allow collecting an impressive amount of detailed runtime information about the JVM, with minimum performance impact, in a way that would have been hard to imagine a few years ago.

Java Mission Control is basically a set of tools that enables efficient and detailed analysis of the extensive data provided by Java Flight Recorder, which is the entity that lives in the JVM collecting a wide variety of runtime information. Java Flight Recorder used to be tightly integrated with the JRockit JVM, although it’s been bundled with the HotSpot JVM since Java 7 Update 40 release.

There is plenty of information out there about how to use both JMC and JFR in the form of blogs, videos and technical documentation, so I won’t cover that in much detail. The purpose of this article is to give a hint to developers unfamiliar with JFR on how to diagnose performance issues associated to an application flow triggered from the front-end.

Main Article

One of the most common scenarios that engineers working on applications deployed in WebLogic servers need to deal with is to diagnose a web application with poor performance.

Often, users complain about sluggishness after they click on a specific link of the application or as part of a specific operation. Also, it is common that these performance issues are not constant and happen rather randomly or intermittently.

Normally, getting a full picture of what could have gone wrong, from the front-end to the middle or back-end layers, requires a thorough analysis of all involved components. Depending on the logging capabilities or integrated diagnostic frameworks used by the application, the difficulty of debugging this way may vary, but in general, it becomes time consuming at the least.

If regular logging is only used, the debugger needs to correlate evidences of events and their timestamps in the log files from different components in order to get an idea of any potential bottlenecks.

Also, capturing fairly detailed performance information about an application is usually expensive, and typically requires enabling logging capabilities or using profiling tools based on the JVMPI/JVMTI interfaces, that may have a negative impact in performance as well.

Fortunately, Java Mission Control and Java Flight Recorder have made things much easier for everybody and have become the Holy Grail of Java application profiling, making it feasible to profile applications with virtually no performance degradation, which wasn’t possible a few years ago.

Capturing WebLogic event data with Java Flight Recorder

It is possible to integrate WebLogic and the Java Flight Recorder to collect event data from WebLogic containers, through the WebLogic Diagnostic Framework (WLDF). The overhead of enabling JFR and configure WLDF to generate WebLogic Server Diagnostics to be captured by JFR is minimal, and makes it ideal to be used in full-time basis, especially with production environments where it adds the greatest value.

Java Flight Recorder works with the concepts of events, which is the representation of a piece of data related to something that happened at a specific point in time. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Saturday May 30, 2015

ADF Performance Monitor: Measuring Network Time to Browser and Browser Load Time by Frank Houweling

clip_image002Recently we added a great new feature to the ADF Performance Monitor: network and browser load time information. Now you know exactly every end-user experience of your ADF application, in real-time. You can quickly resolve any performance bottlenecks with this end-to-end visibility. You can even drill down into an individual user to analyze the experience – to understand the ADF app behavior. The dashboard is improved with several overview and detail graphs that shows the layer (database, webservice, application server, network/browser loadtime) where the time is spent of your application. This is very useful to troubleshoot problems.

The ADF Performance Monitor is an advanced tool specifically build for ADF applications and is aware of the intricacies of the ADF framework. It traces key ADF actions across tiers and services to provide end-to-end visibility and automatically maps each tier to easily visualize the relationship between them. This Tracing provides deep visibility into the cause of application performance issues down to the tiniest detail. Click here for more information.

Network Time and Browser Load Time

Network time is the time that it takes to send a HTTP request from a browser (http request network time) to the application server and from the application server back to the browser (http response network time). The browser loadtime is the time that a browser needs to build up the DOM tree and load the page. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Wednesday Mar 11, 2015

Red Samurai ADF Performance Audit Tool v 3.3 – Audit Improvements

clip_image002ADF Performance Audit Tool v 3.3 from Red Samurai is realeased. This is a next version after 3.2 (Red Samurai ADF Performance Audit Tool v 3.2 - Large Fetch and Full Scan Audit Optimizations) with a set of features improving audit process.
Implemented features in v 3.3:
1. Logging audit data from multiple WebLogic servers
Audit is improved to log data from several WebLogic servers into the same DB schema, Audit UI dashboard allows to select data from specific server or display combined data from all of them. This helps when ADF application is installed in the cluster environment or different application instances are running on different servers.
Changing current audit server address in UI dashboard, to display audit data logged from that server. Here is the example of showing data from all servers, this is by default:Get the ADF monitoring tool here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Sunday Mar 08, 2015

Instrumenting, Analysing, & Tuning the Performance of Oracle ADF Applications By Frank Houweling

clip_image002Last week I presented at the  UKOUG’14 conference on instrumenting, analyzing, & tuning the performance of Oracle ADF applications. Instrumentation refers to an ability to monitor or measure the level of a product’s performance, to diagnose errors and to write trace information. Instrumenting gives visibility and insight of what is happening inside the ADF application and in the ADF framework (what methods and queries are executed, when and how often). These runtime diagnostics can be very effective in identifying and solving performance issues and end-user behavior. This enables developers and operations teams to quickly diagnose and solve performance problems in a test and production environment. This blog posts the slides from this session. It  shows how you can instrument your own ADF application and build your own performance monitor.clip_image003Why is instrumentation important? Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Saturday Jan 03, 2015

JDeveloper and the Oracle Database - Performing Together by Penny Cookson

Accessing the Oracle Database

clip_image002To many Java developers the Oracle database is simply a data store and can be left to get on with its work without interference. More traditional Oracle developers understand that the database is a sophisticated piece of software that offers a great deal of functionality, including an optimization engine that determines the path used to access your data. The optimizer’s task is to determine the possible access paths to the data and work out which access path will use the least resources. When we write our own code we can make sure that it is well designed and does not include anything that will adversely impact on the optimization of the statement. When we are using ADF it is important to understand that the SELECT statements in particular are being written for us, and therefore we need to understand the effect of some of the JDeveloper options that govern the writing of these statements.

This article considers the performance implications of the way we design our ADF applications. Note that it is focused on performance tuning of ADF applications from the perspective of the database, not on tuning the middle tier, which is a whole separate topics of its own. Get the paper here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Forum Wiki

Monday Jun 30, 2014

ADF Development – Performance and Tuning – Overview

ADF Architecture TV channel is a training course to extend customers' knowledge in ADF, it is not a marketing or promotional exercise from Oracle Corporation. If you've arrived on this episode by Googling in, please make sure to look at all of the content on the TV channel rather than taking this episode as a standalone topic.
This episode: This recordings provides an introduction to performance testing and tuning of Oracle ADF applications. It describes the non-technical baseline and gives you a heads up on what to consider when tuning Oracle ADF applications. In two following-up recordings we drill down into the technical tuning options that exist on the ADF Business Components, the task flow and the user interface layer.
Watch the video here.


WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Wednesday Mar 26, 2014

ADF & ADF mobile section: Overview Video published on the ADF Performance Monitor by Frank Houweling

video_pm_overviewA good performance is the key to the success of a web application. Oracle ADF applications are no exception to this rule. ADF performance tuning can be time intensive, costly and quite a challenge when performance issues require developers to delve deep into the inner workings of the ADF framework.

The ADF Performance Monitor is a tool specifically designed for measuring, analyzing, tuning, and checking the performance of Oracle ADF applications. The tool can track and collect crucial (production) performance information of the application’s runtime ADF components that are not standard provided by Oracle. It helps development, QA, and operation teams to detect, analyze and resolve common and less common issues in response times and resource usage of ADF applications. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Monday Mar 17, 2014

Common WebLogic Problems by Steve Millidge

Oracle WebLogic was originally developed by BEA Systems, a company which was acquired by Oracle in 2008.

Since WebLogic had a much larger user base, Oracle quickly made their intentions to deprecate their own Oracle Application Server (OAS, sometimes referred to as OC4J, the J2EE container component) in favour of WebLogic as their primary offering.

C2B2 have worked with WebLogic since it was owned by BEA and have partnered with both BEA and Oracle. As partners, C2B2 have worked on a wide variety of customer engagements across Oracle’s full middleware portfolio.

Migration from OAS to WebLogic

Oracle Application Server has been deprecated for a number of years now, since Oracle have pushed forward with their plans to offer only WebLogic as their application server of choice. Even so, many businesses are still using OAS or OC4J to run their Java EE applications and are increasingly finding that they need to migrate to WebLogic to avoid being left with legacy infrastructure that they can no longer support effectively.

Fortunately, Oracle has anticipated the need for the process of migration to be as seamless as possible so, for their part, they have put a lot of effort into helping customers migrate their infrastructure. Unfortunately, however much work Oracle might do to help with this migration, there will always be problems or unforeseen circumstances due to the dependencies that applications might have on OC4J which change when moving to WebLogic.

Non-standard technology

A great advantage of buying from a company like Oracle is the ecosystem that you get along with the product. WebLogic, for example, has many other components built by Oracle to improve on the standard Java EE way of doing things. Problems can occur purely down to the vast amount of products and services that Oracle offer. Should you use WebLogic’s JMS implementation, Oracle’s Advanced Queuing (AQ) or Oracle Store-And-Forward for your messaging scenario? How do they differ? Is one better than another, or just better suited to certain applications? It’s clear to see that, although you can be sure that Oracle has a product or component to suit your scenario, it’s a significant task to review even the portfolio of components that come with WebLogic, let alone WebLogic compatible software from Oracle.

Performance Tuning

With considerations like migration and such a range of technologies to use, how can you be sure you’re getting the best performance out of your infrastructure? Consider the scenario – you have a suite of applications, migrated from OC4J which used to use AQ for messaging but now bridge endpoints with Oracle SAF. Are the defaults for the connection pools associated with your data sources optimal for persistent messaging?

It’s very common for users who are not familiar with performance concepts to get completely lost when trying to tune every aspect of their application and server. Should you buy more hardware? Do you need to? Performance issues can get very expensive, whether in terms of buying additional hardware, man-hours to maintain responsiveness or just in terms of your reputation to customers so it should never be an afterthought. Read the complete article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Friday Mar 07, 2014

Update for ADF Performance tool by Andrejus Baranovskis

This weekend we have finalized latest update for our ADF runtime performance audit tool - Red Samurai Performance Audit Tool v 2.4. You can read about features included into previous update v 2.3 in this post - Update for Red Samurai Performance Audit Tool - v 2.3. Current update v 2.4 is focused on Slow Query and Large Fetch drill down screens usability. We provide more detailed information to understand how your ADF application performs recently and how applied tuning improves performance.

List of improvements in v 2.4:

  • Improved nested Application Modules activation auditing
  • Improved first screen of the performance dashboard application. Types of Issues graph displays calculated total number of issues. There is option to filter issues by type
    Read the complete article here.


WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Thursday Nov 21, 2013

Major Release for Red Samurai Performance Audit Tool v 2.0 by Red Samurai

New major release for our Red Samurai Performance Audit Tool is published early this week. Current update contains many new graphs, providing lots of insight statistics for ADF BC performance and user access.

We are using this tool in every project we run, this really helps to optimize ADF BC and overall ADF application performance. Little bit about history of this tool. First release was developed in August, 2012 - Red Samurai Performance Audit Tool - Runtime Diagnosis for ADF Applications. There was update v 1.1 published this year, just before OOW - Red Samurai Performance Audit Tool - OOW 2013 release (v 1.1). Update v 1.1 included such statistical information as overall transactions and queries going through ADF BC, as well as user access.http://3.bp.blogspot.com/-6ejDDP6dKdo/UlbznZWo-jI/AAAAAAAAKWE/OykPOyQrcA8/s320/6.png

One of the highlights of current update v 2.0 - use of ADF gauge components to visually display each AM performance. We display slow query performance in seconds for minimum, average and maximum slow query processing times: Read the full article here.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Tuesday Nov 05, 2013

Red Samurai Performance Audit Tool – OOW 2013 release (v 1.1)

We are running our Red Samurai Performance Audit tool and monitoring ADF performance in various projects already for about one year and the half. It helps us a lot to understand ADF performance bottlenecks and tune slow ADF BC View Objects or optimise large ADF BC fetches from DB.

There is special update implemented for OOW'13 - advanced ADF BC statistics are collected directly from your application ADF BC runtime and later displayed as graphical information in the dashboard. I will be attending OOW'13 in San Francisco, feel free to stop me and ask about this tool - I will be happy to give it away and explain how to use it in your project.

Original audit screen with ADF BC performance issues, this is part of our Audit console application:
Audit console v1.1 is improved with one more tab - Statistics. This tab displays all SQL Selects statements produced by ADF BC over time, logged users, AM access load distribution and number of AM activations along with user sessions.
Available graphs:

  • Daily Queries  - total number of SQL selects per day
  • Hourly Queries - Last 48 Hours
  • Logged Users - total number of user sessions per day
  • SQL Selects per Application Module - workload per Application Module
  • Number of Activations and User sessions - last 48 hours - displays stress load

Read the complete article here.

http://1.bp.blogspot.com/-_UBte7CtFLQ/Uio_mnp7JlI/AAAAAAAAKG0/It-w8EgIIFk/s320/performance.png

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Monday Jun 10, 2013

SPARC T5-8 Delivers Best Single System SPECjEnterprise2010 Benchmark running WebLogic 12c

SPARC T5-8 ServerOracle produced a world record single-server SPECjEnterprise2010 benchmark result of 27,843.57 SPECjEnterprise2010 EjOPS using one of Oracle's SPARC T5-8 servers for both the application and the database tier.

  • The SPARC T5-8 server ran the Oracle Solaris 11.1 operating system and used Oracle Solaris Zones to consolidate eight Oracle WebLogic application server instances and one database server instance to achieve this result. The IBM system used LPARS and AIX V7.1.
  • This result demonstrated less than 1 second average response times for all SPECjEnterprise2010 transactions and represents JEE 5.0 transactions generated by 227,500 users.
  • The application server used Oracle Fusion Middleware components including the Oracle WebLogic 12.1 application server and Java HotSpot(TM) 64-Bit Server VM on Solaris, version 1.7.0_15. The database server was configured with Oracle Database 11g Release 2.
  • The 8-chip SPARC T5 processor based server is 2.6x faster than the 8-chip IBM POWER7+ processor based server.

Performance Landscape

Complete benchmark results are at the SPEC website, SPECjEnterprise2010 Results.

SPECjEnterprise2010 Performance Chart
Only Two Virtualized Results (App+DB on 1 Server) as of 5/1/2013

Submitter
EjOPS*
Java EE Server & DB Server

Oracle
27,843.57
1 x SPARC T5-8
8 chips, 128 cores, 3.6 GHz SPARC T5
Oracle WebLogic 12c (12.1.1)
Oracle Database 11g (11.2.0.3)

IBM
10,902.30
1 x IBM Power 780
8 chips, 32 cores, 4.42 GHz POWER7+
WebSphere Application Server V8.5
IBM DB2 Universal Database 10.1

* SPECjEnterprise2010 EjOPS (bigger is better)

Configuration Summary(Oracle Summary)

Application and Database Server:

  • 1 x SPARC T5-8 server, with
  • 8 x 3.6 GHz SPARC T5 processors
  • 2 TB memory
  • 5 x 10 GbE dual-port NIC
  • 6 x 8 Gb dual-port HBA
  • Oracle Solaris 11.1 SRU 4.5
  • Oracle WebLogic Server 12c (12.1.1)
  • Java HotSpot(TM) 64-Bit Server VM on Solaris, version 1.7.0_15
  • Oracle Database 11g (11.2.0.3)

Storage Servers:

  • 6 x Sun Server X3-2L (12-Drive), with
  • 2 x 2.4 GHz Intel Xeon
  • 16 GB memory
  • 1 x 8 Gb FC HBA
  • 4 x Sun Flash Accelerator F40 PCI-E Card
  • Oracle Solaris 11.1
  • 2 x Sun Storage 2540-M2 Array
  • 12 x 600 GB 15K RPM SAS HDD

Switch Hardware:

  • 1 x Sun Network 10 GbE 72-port Top of Rack (ToR) Switch

Benchmark Description

SPECjEnterprise2010 is the third generation of the SPEC organization's J2EE end-to-end industry standard benchmark application. The new SPECjEnterprise2010 benchmark has been re-designed and developed to cover the Java EE 5 specification's significantly expanded and simplified programming model, highlighting the major features used by developers in the industry today. This provides a real world workload driving the Application Server's implementation of the Java EE specification to its maximum potential and allowing maximum stressing of the underlying hardware and software systems,

  • The web zone, servlets, and web services
  • The EJB zone
  • JPA 1.0 Persistence Model
  • JMS and Message Driven Beans
  • Transaction management
  • Database connectivity

Moreover, SPECjEnterprise2010 also heavily exercises all parts of the underlying infrastructure that make up the application environment, including hardware, JVM software, database software, JDBC drivers, and the system network.

The primary metric of the SPECjEnterprise2010 benchmark is jEnterprise Operations Per Second (SPECjEnterprise2010 EjOPS). The primary metric for the SPECjEnterprise2010 benchmark is calculated by adding the metrics of the Dealership Management Application in the Dealer Domain and the Manufacturing Application in the Manufacturing Domain. There is NO price/performance metric in this benchmark.

Key Points and Best Practices

  • Eight Oracle WebLogic server instances on the SPARC T5-8 server were hosted in 8 separate Oracle Solaris Zones to demonstrate consolidation of multiple application servers. The 8 zones were bound to 4 resource pools using 64 cores (4 cpu chips).
  • The Oracle WebLogic application servers were executed in the FX scheduling class to improve performance by reducing the frequency of context switches.

Read the full benchmark results here.

See Also SPECjEnterprise2010 Results Page & SPARC T5-8 Result Page at SPEC & SPARC T5-8 Server oracle.com OTN.

Disclosure Statement SPEC and the benchmark name SPECjEnterprise are registered trademarks of the Standard Performance Evaluation Corporation. Results from www.spec.org as of 5/1/2013. SPARC T5-8, 27,843.57 SPECjEnterprise2010 EjOPS; IBM Power 780, 10,902.30 SPECjEnterprise2010 EjOPS; IBM Power 730, 13,161.07 SPECjEnterprise2010 EjOPS. Oracle server only hardware list price is $298,494 and total hardware plus software list price is $1,565,092 from http://www.oracle.com as of 4/24/2013.

IBM server only hardware list price is $835,555 and total hardware plus software cost of $2,174,152.00 based on public pricing from http://www.ibm.com as of 4/24/2013. IBM Power 730 server total hardware plus software cost of $819,451.00 based on public pricing from http://www.ibm.com as of 4/24/2013.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Thursday May 23, 2013

Red Samurai Performance Audit Tool – Up and Running by Andrejus Baranovskis

It is been some time since we created Red Samurai Performance Audit Tool (in August, 2012). This tool was deployed and it was logging all performance related issues in one of the projects, already for eight months. I thought to share with you how it goes, below you can see the results logged continuously from August, 2012 till now

.

As the project was growing and becoming more complex, performance was going down. But after complexity reached at peak and we

were able to locate performance bottlenecks with audit tool for fixing - performance started to improve in the recent months.

WebLogic Partner Community

For regular information become a member in the WebLogic Partner Community please visit: http://www.oracle.com/partners/goto/wls-emea ( OPN account required). If you need support with your account please contact the Oracle Partner Business Center.

Blog Twitter LinkedIn Mix Forum Wiki

Search

Archives
« September 2015
SunMonTueWedThuFriSat
  
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today