Welcome!

Java IoT Authors: Elizabeth White, Pat Romanski, Liz McMillan, Yeshim Deniz, Zakia Bouachraoui

Related Topics: @DevOpsSummit, Java IoT, Microservices Expo

@DevOpsSummit: Blog Post

Common Web App Performance Problems By @Neotys | @DevOpsSummit [#DevOps]

The best way to address performance problems is to find and eliminate them before they affect users

The 10 Most Common Web App Performance Problems

It's inevitable that web application problems are going to happen. Here at Neotys, our business is based on helping you prevent problems through website monitoring and testing. But problems can come from anywhere, and sometimes you just need to know where to look. So we decided to put together a short guide on some of the most common performance issues you'll encounter.

Now, it's important to remember that the best way to address performance problems is to find and eliminate them before they affect users in the first place. One of the best tools you can have in your pocket is a good maintenance program. Develop a strategy for downtime and create redundancy and scaling plans. Think about what kind of user load you'll need to handle over the next month, as well as the next year. And of course, test load regularly and monitor production performance continually.

However, no matter how careful and diligent you are, things are going to happen. So here are some of the common causes of performance problems and what you may be able to do to address them.

Problem 1: Poorly Written Code
Poorly written code can lead to a host of web application issues including inefficient algorithms, memory leaks and application deadlocks. Old versions of software, or integrated legacy systems can also drag performance down. Make sure your teams are using all the tools at their disposal - from automated tools like profilers to best programming practices like code reviews.

Problem 2: Unoptimized Databases
An optimized database allows for the highest levels of security and performance, while an unoptimized database brings can destroy a production application. Missing indexes slow down the performance of SQL queries causing, which can drag down an entire site. Be sure to use scripts and file statistics to check for any inefficient queries.

Problem 3: Unmanaged Growth of Data
Data systems tend to degrade over time. Developing a plan to manage and monitor data as it grows is indispensable to your web performance success. The first step is deciding who is accountable for data growth in your business. From there, your team will need to research and determine the appropriate storage for your data needs. Look at all your options, from databases to caches to more sophisticated layered storage solutions.

Problem 4: Traffic Spikes
We generally think of increased traffic as a good thing. However, anyone who has experienced major traffic spikes after a marketing promotion or viral video knows what can happen when you aren't properly prepared for them. Planning ahead is key, and set up an early warning system through simulated user monitoring systems like NeoSense. That way, you'll see when traffic is impacting transactions before your users have a bad experience.

Problem 5: Poor Load Distribution
Poor load distribution can cause slow response times by incorrectly assigning new site visitors to bogged-down servers instead of others with cycles to spare. If too many people are on the same server, they're going to experience problems, even if the overall system is well under capacity. It is imperative to test with a product like NeoLoad as it will help you find any infrastructural weaknesses at hand.

Problem 6: Default Configurations
Systems must be properly tuned. While default configurations make it easy to get new components up and running, they're not always appropriate for your web applications in a live production environment. Every setting should be checked: review thread counts, allocated memory and permissions. Confirm that all configuration parameters suit the demands placed on your web application, and aren't the way they are just out of convenience.

Problem 7: DNS, Firewall, and Network Connectivity
DNS queries make up the majority of web traffic. That's why a DNS issue can cause so much trouble, preventing visitors from accessing your site and resulting in errors, 404s and incorrect pathways. Likewise, network connectivity and firewall efficiency are crucial for access and productivity. Use DNS monitoring safeguards to pinpoint problems at hand. Also, revise switches, check VLAN tags, and distribute tasks between servers. These are just a few ways to troubleshoot these types of performance issues.

Problem 8: Troublesome Third-Party Services
If you rely on third-party services, you know that some slowdowns are out of your control. Who hasn't experienced a stalled page, waiting to load an ad from someone else's ad server. If your users are experiencing problems, it's essential to determine if the problem is on your side or that of the third-party. If you decide to continue using the third-party service, look at making some design changes to protect your site from at least some of the effects of a third-party service issue. Finally, make sure your company and the off-service provider are clear on performance guarantees.

Problem 9: Shared Resources and Virtual Machines
Just about every web application today relies on virtual machines for everything from scalability to management to system recovery. However, sometimes the way these virtual systems are organized - hundreds of VMs on a single physical server - can result in problems where one bogged-down system affects all the others. After all, contention is bound to happen. Monitor systems closely so that if one VM is causing problems, you can deal with the side-effects quickly.

Problem 10: The Domino Effect
Finally, make sure you realize that a failure in one location may affect other spots in ways you wouldn't necessarily think of. Problems compound upon themselves, making it hard to determine what is really going on. You've got to train your team to find root causes, backtracing through problems to find the real culprit. You may even want to think about mimicking Netflix's Chaos Monkey strategy, which introduces abnormal errors in the network to push the boundaries of resiliency and recovery.

Proactively Solve Performance Issues
Now that you have an overview of the most common performance problems is easy to see why we need to test load performance at higher user levels beforehand. Check out this related article, which explains how to get your servers ready for heavy user load. Once users have adopted your site, take advantage of testing-in-production (TiP) procedures. Finally, use simulated user scripts, which navigate and perform buyer transactions to give you better data about where the site falls short.

More Stories By Tim Hinds

Tim Hinds is the Product Marketing Manager for NeoLoad at Neotys. He has a background in Agile software development, Scrum, Kanban, Continuous Integration, Continuous Delivery, and Continuous Testing practices.

Previously, Tim was Product Marketing Manager at AccuRev, a company acquired by Micro Focus, where he worked with software configuration management, issue tracking, Agile project management, continuous integration, workflow automation, and distributed version control systems.

IoT & Smart Cities Stories
Founded in 2000, Chetu Inc. is a global provider of customized software development solutions and IT staff augmentation services for software technology providers. By providing clients with unparalleled niche technology expertise and industry experience, Chetu has become the premiere long-term, back-end software development partner for start-ups, SMBs, and Fortune 500 companies. Chetu is headquartered in Plantation, Florida, with thirteen offices throughout the U.S. and abroad.
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
A valuable conference experience generates new contacts, sales leads, potential strategic partners and potential investors; helps gather competitive intelligence and even provides inspiration for new products and services. Conference Guru works with conference organizers to pass great deals to great conferences, helping you discover new conferences and increase your return on investment.
DXWorldEXPO LLC announced today that ICOHOLDER named "Media Sponsor" of Miami Blockchain Event by FinTechEXPO. ICOHOLDER gives detailed information and help the community to invest in the trusty projects. Miami Blockchain Event by FinTechEXPO has opened its Call for Papers. The two-day event will present 20 top Blockchain experts. All speaking inquiries which covers the following information can be submitted by email to [email protected] Miami Blockchain Event by FinTechEXPOalso offers sp...
Headquartered in Plainsboro, NJ, Synametrics Technologies has provided IT professionals and computer systems developers since 1997. Based on the success of their initial product offerings (WinSQL and DeltaCopy), the company continues to create and hone innovative products that help its customers get more from their computer applications, databases and infrastructure. To date, over one million users around the world have chosen Synametrics solutions to help power their accelerated business or per...
Poor data quality and analytics drive down business value. In fact, Gartner estimated that the average financial impact of poor data quality on organizations is $9.7 million per year. But bad data is much more than a cost center. By eroding trust in information, analytics and the business decisions based on these, it is a serious impediment to digital transformation.
@DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22nd international CloudEXPO | first international DXWorldEXPO and will feature technical sessions from a rock star conference faculty and the leading industry players in the world. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time t...
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...
SYS-CON Events announced today that IoT Global Network has been named “Media Sponsor” of SYS-CON's @ThingsExpo, which will take place on June 6–8, 2017, at the Javits Center in New York City, NY. The IoT Global Network is a platform where you can connect with industry experts and network across the IoT community to build the successful IoT business of the future.