@CloudExpo Authors: Elizabeth White, Zakia Bouachraoui, Liz McMillan, Yeshim Deniz, Pat Romanski

Related Topics: @CloudExpo, Agile Computing, @DevOpsSummit

@CloudExpo: Blog Feed Post

The Seven Ps of High Performance Cloud Apps | @CloudExpo #Cloud

The only way to measure the performance of your app is to plan ahead and identify key metrics

Say it with me... "Proper Planning and Preparation Prevents Poor PaaS Performance." I'm sure you have heard the original 7 Ps before. My version is a little different as I have decided to focus on the performance of Platform as a Service (PaaS). Hopefully this saying will help you remember some of my tips for building higher performance web apps.

Proper metrics must be tracked
The only way to measure the performance of your app is to plan ahead and identify key metrics that can help you gauge how your app is performing. CPU and memory usage are not enough. Identify potential bottlenecks and KPIs within your app and track their every movement. You can track them via statsd, mbeans, Windows performance counters, or other solutions. You can monitor key web requests and database queries via an application performance monitoring (APM) solution. Also don't forget to have good logging and error tracking in place.

Planning and design are required to scale
The only way to ensure that your application can perform at a high level and scale is to do a lot of planning and design work. Be sure to spend some extra time researching and selecting the right application stack. There is an insane amount of options these days when it comes to SQL, NoSQL, caching, and other technologies. I would caution picking something you have never used just because it is the cool new thing. You could (will) waste months trying to figure out how to scale some new NoSQL solution that you aren't familiar with. My biggest suggestion is making sure you know how to scale out any SQL usage so you don't end up with one giant database.

Preparation helps minimize risk
Deploying an application can be complicated. Make sure you take the extra time to set up a build server to ensure that you can systematically repeat your deployment process over and over to make sure no steps are skipped. With a single click, we can ensure that our code is compiled and deployed all the way to Azure exactly the same way every time via Bamboo. This automation also helps you deploy hot fixes quick when performance problems do arise.

Testing Prevents failure of your deployment
When it comes to creating high performance web apps, load testing is key. Tools like jmeter, loader.io, and others can make load testing easy these days. You will also want to use an APM solution to help you identify the bottlenecks in your code, like slow database queries, too many queries, too many cache calls, slow 3rd party web services, etc. Canada's recent election is a great example of massive scale and load testing for success. Learn how they scaled up to 800k requests a second on Azure.

Poor user experiences hurt your business
The performance of your application is critical to ensure that your users have a good user experience with your product. There has been lots of research that shows internet users these days are used to very fast sites and even a slight slow down can cause them to leave your website. Google is now recommending that response times be under 200ms which can be quite challenging. Tracking user satisfaction (like apdex scoring) via an APM solution or 99% percentiles is a good way to gauge how happy your users are.

PaaS has made scaling easier
Platform as a service (Paas) makes it easier than ever to design and build high performance web apps. Cloud providers like Azure & AWS make it easy and low cost to get started the right way from the beginning. From the very start, you can use services like caching, queuing, SQL, and NoSQL databases and know that they can scale and you don't have to worry too much about how to scale them. A few years ago having to install, deploy, and support all of those pieces of your application stack took a lot of work.

Performance can change at any time
Agile development is the opposite of stability. As you continue to make changes to your product, you could introduce new performance problems or bugs at any time. As your application usage grows, new bottlenecks, like a slow database query, will be found. Be sure to think about performance constantly as usage grows and new features are released. Cloud hosting can also have performance ups and downs due to noisy neighbors and their own maintenance. To constantly monitor the performance of your application, you will want to utilize an APM product that can track the overall performance of your application and help identify slow web requests, database queries, web service calls and more. If you're ready to test out Stackify's APM+ solution on your own data, simply click here to get started.

The post The 7 Ps of High Performance Cloud Apps appeared first on Stackify.

Read the original blog entry...

More Stories By Stackify Blog

Stackify offers the only developers-friendly solution that fully integrates error and log management with application performance monitoring and management. Allowing you to easily isolate issues, identify what needs to be fixed quicker and focus your efforts – Support less, Code more. Stackify provides software developers, operations and support managers with an innovative cloud based solution that gives them DevOps insight and allows them to monitor, detect and resolve application issues before they affect the business to ensure a better end user experience. Start your free trial now stackify.com

CloudEXPO Stories
The Internet of Things will challenge the status quo of how IT and development organizations operate. Or will it? Certainly the fog layer of IoT requires special insights about data ontology, security and transactional integrity. But the developmental challenges are the same: People, Process and Platform and how we integrate our thinking to solve complicated problems. In his session at 19th Cloud Expo, Craig Sproule, CEO of Metavine, demonstrated how to move beyond today's coding paradigm and share the must-have mindsets for removing complexity from the development process, accelerate application delivery times, and ensure that developers will become heroes (not bottlenecks) in the IoT revolution.
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
DevOps with IBMz? You heard right. Maybe you're wondering what a developer can do to speed up the entire development cycle--coding, testing, source code management, and deployment-? In this session you will learn about how to integrate z application assets into a DevOps pipeline using familiar tools like Jenkins and UrbanCode Deploy, plus z/OSMF workflows, all of which can increase deployment speeds while simultaneously improving reliability. You will also learn how to provision mainframe system as cloud-like service.
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
What are the new priorities for the connected business? First: businesses need to think differently about the types of connections they will need to make – these span well beyond the traditional app to app into more modern forms of integration including SaaS integrations, mobile integrations, APIs, device integration and Big Data integration. It’s important these are unified together vs. doing them all piecemeal. Second, these types of connections need to be simple to design, adapt and configure. Plus, with the proliferation of IoT, there is an explosion in the number of devices requiring interconnection - both in terms of asset monitoring and spatial analytics.