JVM Monitoring and Performance Assurance for Java-Based Banking and Trading Applications
February 15, 2018

Vinod Mohan
eG Innovations

Share this

Java is one of the most popular technologies used for application development. Tens of thousands of web and mobile applications are built on Java around the world.

Some highlights of Java's advantages include its security, scalability, portability and compatibility – among the most sought characteristics for building highly demanding and performance-sensitive applications, as seen in banking, trading, and other financial corporations. Speed is absolutely critical for these low-latency applications. If a Java-based trading application is not able to manage handling large in-memory data sets in real time, business-critical transactions will stall. Just a few milliseconds of delay can be disastrous and result in heavy financial losses.

The role of the Java Virtual Machine (JVM) in Java's server-side architecture plays a major role in memory management for these high-frequency applications. Using a process known as garbage collection, the JVM automatically frees up heap memory used by objects that are no longer referenced in the Java code.

Automating this process makes the life of a developer easier, as he/she is relieved from keeping track of free allocated memory, a time-consuming task. However, garbage collection does itself take time to execute. The more frequently it happens, the more pauses will occur in processing data. So, with too much garbage collection the transaction will likely suffer from slow performance.

Conventional JVM manufacturers are working towards reducing garbage collection pauses and ensuring that memory management is more seamless, using techniques such as concurrent, parallel and compacting garbage collection. Further, some modern JVM vendors are adopting a radically new pauseless approach to garbage collection that delivers faster processing for low-latency and memory-intensive applications.

Look for an end-to-end application performance monitoring solution that provides deep visibility into all Java performance metrics from the JVM and application container, all the way across business transactions and end-user experience

Achieving optimum JVM performance is key to ensuring proper memory management and fast application processing. According to a Cornell University study, a 1-millisecond improvement in the performance of a trading application can be worth $100 million a year to a major brokerage firm. Because of this potential for loss, IT teams owning banking, financial, trading and other Java-based applications place a high value on having a proper JVM monitoring strategy in place. A comprehensive Java performance monitoring solution will help track critical JVM metrics and alert the team to issues with garbage collection, out-of-memory errors, high CPU threads, and more.

Top JVM Performance Metrics to Monitor:

JVM Memory Management

■ Know if the heap memory has exceeded the reserved memory for the JVM

■ Monitor heap and non-heap memory and know whether the JVM is sized correctly

■ Identify specific JVM processes that are consuming high memory and/or CPU

JVM Garbage Collection

■ Number of times garbage collection happens (frequency)

■ Time taken for garbage collection

■ Memory metrics before and after garbage collection

JVM Threads

■ Track down blocked, waiting, deadlocked and high CPU threads

■ Measure wait time for each thread

■ Have access to quickly look up the stack trace and locate specific method calls that are having any exceptions

Other JVM-level Metrics

■ Monitor the number of loaded and unloaded classes

■ Continuously check JMX connectivity to the JVM

■ Keep tabs on JVM uptime and availability stats

JVM Server-level Metrics

■ For a pauseless JVM like Azul Zing, the overall reservable, contingency and pause prevention pool memory metrics are available at the operating system layer since these are shareable across multiple JVMs running on the same server. You need the ability to measure these memory metrics from the operating system.

■ Additionally, administrators need the ability to monitor the overall available memory at the server level, as well as that which is being allocated to the OS.

■ Track the health status of the JVM server and the server hardware.

Look for an end-to-end application performance monitoring solution that provides deep visibility into all Java performance metrics from the JVM and application container, all the way across business transactions and end-user experience. It gives you instant visibility into erroneous application code and errant SQL queries to facilitate code optimization. Monitor all aspects of JVM performance to ensure that the JVM works optimally and delivers fast and jitter-less application performance.

Vinod Mohan is Senior Manager, Product Marketing, at eG Innovations
Share this

The Latest

April 18, 2019

A vast majority of organizations are still unprepared to properly respond to cybersecurity incidents, with 77% of respondents indicating they do not have a cybersecurity incident response plan applied consistently across the enterprise, according to The 2019 Study on the Cyber Resilient Organization, a study conducted by the Ponemon Institute on behalf of IBM ...

April 17, 2019

People and businesses today make mistakes similar to Troy, when they get too enamored by the latest, flashiest technology. These modern Trojan Horses work through their ability to "wow" us. Cybercriminals find IoT devices an easy target because they are the cool new technology on the block ...

April 16, 2019

Software security flaws cause the majority of product vulnerabilities, according to the 2019 Security Report from Ixia's Application and Threat Intelligence (ATI) Research Center ...

April 15, 2019

The majority of organizations (nearly 70 percent) do not prioritize the protection of the applications that their business depend on — such as ERP and CRM systems — any differently than how low-value data, applications or services are secured, according to a new survey from CyberArk ...

April 12, 2019

While 97 percent of organizations are currently undertaking or planning to undertake digital transformation initiatives, integration challenges are hindering efforts for 84 percent of organizations, according to the 2019 Connectivity Benchmark Report from MuleSoft ...

April 11, 2019

Companies have low visibility into their public cloud environments, and the tools and data supplied by cloud providers are insufficient, according to The State of Public Cloud Monitoring, a report sponsored by Ixia ...

April 10, 2019

Without improvement in time and budget constraints, the majority of tech pros (75 percent) say they will be unable to confidently manage future innovations, according to IT Trends Report 2019: Skills for Tech Pros of Tomorrow, a new report from SolarWinds. This reality ultimately puts businesses at risk of performance and competitive advantage losses, making the prioritization of skills and career development for tech pros paramount ...

April 09, 2019

Tech pros have one foot grounded in today's hybrid IT realities while also setting their sights on emerging technology, according to IT Trends Report 2019: Skills for Tech Pros of Tomorrow ...

April 08, 2019

This Thursday EMA will be presenting a webinar — Automation, AI and Analytics: Reinventing ITSM — covering recent research. There were quite a few surprises. And in fact, many of the surprises indicated a yet-more-positive outlook than we expected ...

April 05, 2019

Almost three-fourths (69 percent) of organizations have plans to deploy 5G by 2020, according to a new 5G use case and adoption survey by Gartner. Organizations expect 5G networks to be mainly used for IoT communications and video, with operational efficiency being the key driver ...