Welcome!

Weblogic Authors: Yeshim Deniz, Elizabeth White, Michael Meiner, Michael Bushong, Avi Rosenthal

Related Topics: Weblogic

Weblogic: Article

Application Performance Best Practices

Application Performance Best Practices

Q. With respect to logging, how much of a good thing is too much of a good thing?
A.
Logging is a powerful application tool that, in my opinion, has been under-utilized. Many architects may have implemented some sort of a strategy for logging common application events to a text file for debugging. In a few cases, full-featured audit strategies have been implemented for complete documentation of every customer transaction, perhaps for review at a later date. Most of the time, however, logging is being used just to report major warning or error conditions within the application code.

If you haven't looked at the cost of logging to your production application, you will probably be surprised by just how many CPU cycles are burned by it. Look for a long, steady burn rate in your CPU utilization - whatever the CPU utilization of your WLS process "settles" to between any visible spikes. If your WLS instance isn't handling any highly concurrent user loads, this "sizzle" or "baseline" can often be accounted for by the writes to your log file, particularly if you see much of the utilization at the system level of the OS.

One of the most common culprits is unhandled exceptions on core application paths. As any performance primer will explain, exception-handling routines are among the most expensive in any application's code. It gets even more expensive when your handling strategy is to print every single exception - whether meaningful or not - to standard out or standard error. In some cases, Wily has seen customers generating megabytes of logfile every hour - all with the same exception throws from the same use case in the application. I don't recommend doing that.

Once you get unnecessary exceptions out of the logging picture, you should still be thinking carefully about what information, if any, you want your application to be logging to a file. JMX is another great option for handling many of the problems that some architects have only considered logging to solve, but make sure you have thought through what you are going to do with the data you publish via JMX.

Q. Why should I deploy my application as an EAR file?
A.
In most organizations that are currently using Java in production, there are at least a few legacy projects from the early years of Java's development as an enterprise platform. As the Java platform matured, feature and functionality were added to address many of the most common business problems encountered by the early pioneers. With today's full J2EE solution there are a myriad of facilities available that I recommend you take advantage of. To that end, many people have asked me why they should spend their time repackaging old applications.

When confronted with that question, some IT managers protest by saying that they really don't need the ability to run multiple versions of a single application in a single application server. They say that they're happy continuing to get away with the arrangement they have used to date, loading their application code on the system classpath.

There are, however, far more compelling reasons to go ahead and do the work. Perhaps the most important should be fear of the unknown. With even a minor revision to your application server new classes and new versions of classes can appear unexpectedly on your system classpath ahead of your application code. A new revision of an application that has been running perfectly fine, and has gone through all its QA smoke tests without issue, can die inexplicably in production as a result of an uncontrolled change to one of the key classes that it happens to share with the server. Unless you truly know everything that's going in and out of weblogic.jar with each point release of the BEA WebLogic Server, this should scare you. Bugs like these can be extremely difficult to discover.

If you have an environment where you're running more than one application per server instance, then the problem gets exponentially more complicated from there. Repackaging your application as a proper enterprise archive not only shelters you from many of these types of application problems, but allows you to take full advantage of a modern application server's ability to host dozens of different applications without conflict. Build-and-release management becomes less costly and more straightforward when each revision of an application is encapsulated by a single file - you can perform rollbacks more quickly and easily, should they be necessary, and you have the additional peace of mind that any tool that purports to support Java enterprise ought to read your application in this format. Additionally, any future work on your application should become easier as well.

*  *  *

As always, I invite you to send an e-mail to [email protected] if you have any performance-related questions about JVMs, Java applications, BEA WebLogic Server, or connections to back-end systems.

More Stories By Lewis Cirne

Lew Cirne is the founder of New Relic, the first provider of on-demand (SaaS) application management tools for cloud or datacenter applications. A seasoned entrepreneur, technologist, and enterprise software pioneer, he has been focused on application performance management for more than ten years. Cirne holds seven patents related to application performance technology. Most recently he was an Entrepreneur in Residence at Benchmark Capital. He founded and was first CEO of Wily Technology and earlier held senior engineering positions at Apple and Hummingbird Communications.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


IoT & Smart Cities Stories
All in Mobile is a place where we continually maximize their impact by fostering understanding, empathy, insights, creativity and joy. They believe that a truly useful and desirable mobile app doesn't need the brightest idea or the most advanced technology. A great product begins with understanding people. It's easy to think that customers will love your app, but can you justify it? They make sure your final app is something that users truly want and need. The only way to do this is by ...
Digital Transformation and Disruption, Amazon Style - What You Can Learn. Chris Kocher is a co-founder of Grey Heron, a management and strategic marketing consulting firm. He has 25+ years in both strategic and hands-on operating experience helping executives and investors build revenues and shareholder value. He has consulted with over 130 companies on innovating with new business models, product strategies and monetization. Chris has held management positions at HP and Symantec in addition to ...
Dynatrace is an application performance management software company with products for the information technology departments and digital business owners of medium and large businesses. Building the Future of Monitoring with Artificial Intelligence. Today we can collect lots and lots of performance data. We build beautiful dashboards and even have fancy query languages to access and transform the data. Still performance data is a secret language only a couple of people understand. The more busine...
DXWorldEXPO LLC announced today that Big Data Federation to Exhibit at the 22nd International CloudEXPO, colocated with DevOpsSUMMIT and DXWorldEXPO, November 12-13, 2018 in New York City. Big Data Federation, Inc. develops and applies artificial intelligence to predict financial and economic events that matter. The company uncovers patterns and precise drivers of performance and outcomes with the aid of machine-learning algorithms, big data, and fundamental analysis. Their products are deployed...
The challenges of aggregating data from consumer-oriented devices, such as wearable technologies and smart thermostats, are fairly well-understood. However, there are a new set of challenges for IoT devices that generate megabytes or gigabytes of data per second. Certainly, the infrastructure will have to change, as those volumes of data will likely overwhelm the available bandwidth for aggregating the data into a central repository. Ochandarena discusses a whole new way to think about your next...
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO are the world's most influential, independent events where Cloud Computing was coined and where technology buyers and vendors meet to experience and discuss the big picture of Digital Transformation and all of the strategies, tactics, and tools they need to realize their goals. Sponsors of DXWorldEXPO | CloudEXPO benefit from unmatched branding, profile building and lead generation opportunities.
Cell networks have the advantage of long-range communications, reaching an estimated 90% of the world. But cell networks such as 2G, 3G and LTE consume lots of power and were designed for connecting people. They are not optimized for low- or battery-powered devices or for IoT applications with infrequently transmitted data. Cell IoT modules that support narrow-band IoT and 4G cell networks will enable cell connectivity, device management, and app enablement for low-power wide-area network IoT. B...
The hierarchical architecture that distributes "compute" within the network specially at the edge can enable new services by harnessing emerging technologies. But Edge-Compute comes at increased cost that needs to be managed and potentially augmented by creative architecture solutions as there will always a catching-up with the capacity demands. Processing power in smartphones has enhanced YoY and there is increasingly spare compute capacity that can be potentially pooled. Uber has successfully ...
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22nd International Cloud Expo, which will take place on June 5–7, 2018, at the Javits Center in New York City, NY. CrowdReviews.com is a transparent online platform for determining which products and services are the best based on the opinion of the crowd. The crowd consists of Internet users that have experienced products and services first-hand and have an interest in letting other potential buye...
When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...