Two Converging Technological Paradigms and Offer Bottom-Line Value To Any Organization

Microservices Journal

Subscribe to Microservices Journal: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Microservices Journal: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Microservices Authors: Charles Araujo, Liz McMillan, Elizabeth White, Yeshim Deniz, Pat Romanski

Related Topics: Cloud Computing, Microservices Journal, DevOps Journal

Article

Web Performance Optimization | @DevOpsSummit #DevOps #AI #WebPerf

We also know that performance optimization can be very time consuming and potentially expensive

Web Performance Optimization: Top Three Server and Client-Side Performance Tips
By Matt Watson

We live in a world where nobody is willing to wait for anything. We have become accustomed to websites and mobile apps working instantly. If I click on a search result from Google and it doesn't load within a couple seconds, I will no doubt just click on a different result. We have all been trained to expect websites to load blazingly fast.

We all know that the performance of our software is important!

We also know that performance optimization can be very time consuming and potentially expensive. We also know that premature optimization is a bad thing.

Web performance optimization is a never-ending job. In this article we will review some of the top server and client-side performance issues and how to resolve them.

What is web performance optimization?
Web performance optimization occurs by monitoring and analyzing the performance of your web application and identifying ways to improve it.

Web applications are a mixture of server-side and client-side code. Your application can have performance problems on either side and both need to be optimized.

The client side relates to performance as seen within the web browser. This includes initial page load time, downloading all of the resources, JavaScript that runs in the browser, and more.

The server side relates to how long it takes to run on the server to execute requests. Optimizing the performance on the server generally revolves around optimizing things like database queries and other application dependencies.

Let's take a deeper look at how to optimize performance for both the client and server sides.

Optimizing client performance
Client performance typically revolves around reducing the overall size of web pages. This includes the size of the files and perhaps more importantly, the number of them.

It is common these days for a single web page to load 100+ files. You can quickly see this via your web browser with the dev tools. For Google Chrome, hit F12 (on Windows), go to the Network tab and then reload a page on your site.

For example, here is what it looks like for the home page of CNN.

CNN screenshot to show page load time

As you can see, it took 11.04 seconds to download 188 files to load the page. Yikes!

This gives you a basic understanding of how long it takes and how many files are being downloaded. Your goal is to optimize both of these.

Here are some of the top strategies to optimize performance on the client side

1. Caching & content delivery networks
One of the smartest things you can do is leverage a content delivery network (CDN). Many of the files on your website, like JavaScript, CSS, and image files, are static and do not change.

You can increase the performance of your website by caching these files on servers closer to where your users are. This offloads the traffic from your servers and makes your site load faster.

I highly recommend Cloudflare for this. It is extremely simple to setup and just works.

2. Bundle & minification
One of the most important things you want you to do is bundle your files together so there are fewer files. You can also optimize their contents to shrink the file size down through various minification techniques.

Unfortunately, bundling and minification typically require code changes to accomplish.

The Cloudflare content delivery network offers a feature called Rocket Loader that can automatically combine your JavaScript for you. I have also used a WordPress plugin called Fast Velocity that is also pretty awesome.

3. Optimizing image usage
I struggle with this problem a lot. My computer has a 4K monitor so I am always taking pretty large screenshots and inserting them into blog posts. This causes the image files to be large. Also, having multiple screenshots on a page can really slow it down.

Most images can be optimized and made smaller. There are tools for jpeg and png files to help shrink the files. If you are using WordPress, there are plugins that can automatically do it.

If you have a lot of small icons on your pages, you should consider switching to an icon font like Font Awesome or using image sprites.

Lastly, if you have pages that are long with a lot of images, you may want to consider lazy loading your images. This means that on page load, you only load the images that you can see on the screen. As your user scrolls down, you setup your site to load additional images.

Optimizing server performance
No matter which programming language you are using, there are several common issues that cause performance problems.

Web performance optimization isn't just about optimizing the client. Many performance problems are due to slow SQL queries, hidden errors, and other issues.

1. Optimize usage of application dependencies
Most software applications use SQL databases, caching, external web services, and other application dependencies. These are things like SQL Server, Oracle, Redis, MongoDB, Elasticsearch and external HTTP web services.

The best way to evaluate how your code is using application dependencies and how they perform is by code profiling. Products like Retrace are safe to use on your servers and can instantly show you which dependencies are being used and how long they take.

Below is an example of a typical web application with pretty consistent traffic and performance.

an example of a typical web application with pretty consistent traffic and performance.

In this example below you can quickly identify that Redis is causing big performance spikes.

In this example below you can quickly identify that Redis is causing big performance spikes.

One of the common problems is identifying slow SQL queries and figuring out how to improve their performance. Another common issue is identifying SQL queries that are being called too often.

 identifying slow SQL queries and figuring out how to improve their performance

2. Identify top application errors
Your application is probably throwing all sorts of exceptions that you don't even know about. Exceptions are one of the best ways to identify bugs and even performance problems in your code.

Retrace can collect and provide excellent reporting about all the exceptions that are being thrown within your code.

Retrace can collect and provide excellent reporting about all the exceptions that are being thrown within your code.

Exceptions themselves cause a lot of performance overhead. An application that throws thousands of exceptions a minute will consume a lot more CPU than it should.

This is a common problem in code that does a lot of data parsing in "try catch" blocks and just ignores any exceptions being thrown.

Learn more: How GWB Found Hidden Exceptions and Application Performance Problems

3. Optimize your most-used web pages
If you don't know which pages on your site are used the most and which ones are the slowest, you definitely should.

You could try and do this by parsing the logs from your web server. This is a nightmare if your web application uses REST URLs because most of the URLs will be unique.

An easier way is using an application performance management solution like Retrace.

Your goal is to identify which requests are being used the most and which ones are taking up the most amount of time on your server. This helps you prioritize where to do performance tuning.

You goal is to identify which requests are being used the most and which ones are taking up the most amount of time on your server.

With Retrace, you can also view code-level performance to understand exactly what it is doing.

With Retrace, you can also view code-level performance to understand exactly what it is doing.

Summary
Web performance optimization is a job that is never done. As you continue to make changes to your software and roll out new features, its usage and performance will continue to change.

I recommend reviewing your application performance monitoring tools like Retrace on a weekly basis, looking for things that could use some improvement. You can then prioritize these work items as part of your next sprint.

Also be sure to check out some of our other guides about application performance.

The post Web Performance Optimization: Top 3 Server and Client-Side Performance Tips appeared first on Stackify.


DXWorldEXPO LLC, the producer of the world's most influential technology conferences and trade shows has announced the conference tracks for CloudEXPO | DXWorldEXPO 2018 New York.

DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, in New York City.

Digital Transformation (DX) is a major focus with the introduction of DXWorldEXPO within the program. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term.

A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throughout enterprises of all sizes.

Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)

Sponsorship Opportunities Here

Speaking Opportunities Here

Sponsorship and Speaking Inquiries: info@dxworldexpo.com.

2018 Conference Agenda, Keynotes and 10 Conference Tracks

DXWordEXPO New York 2018 and Cloud Expo New York 2018 agenda present 222 rockstar faculty members, 200 sessions and 22 keynotes and general sessions in 10 distinct conference tracks.

  • Cloud-Native | Serverless
  • DevOpsSummit
  • FinTechEXPO - New York Blockchain Event
  • CloudEXPO - Enterprise Cloud
  • DXWorldEXPO - Digital Transformation (DX)
  • Smart Cities | IoT | IIoT
  • AI | Machine Learning | Cognitive Computing
  • BigData | Analytics
  • The API Enterprise | Mobility | Security
  • Hot Topics | FinTech | WebRTC

Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)

DXWorldEXPO | CloudEXPO 2018 New York cover all of these tools, with the most comprehensive program and with 222 rockstar speakers throughout our industry presenting 22 Keynotes and General Sessions, 200 Breakout Sessions along 10 Tracks, as well as our signature Power Panels. Our Expo Floor brings together the world's leading companies throughout the world of Cloud Computing, DevOps, FinTech, Digital Transformation, and all they entail.

As your enterprise creates a vision and strategy that enables you to create your own unique, long-term success, learning about all the technologies involved is essential. Companies today not only form multi-cloud and hybrid cloud architectures, but create them with built-in cognitive capabilities.

Cloud-Native thinking is now the norm in financial services, manufacturing, telco, healthcare, transportation, energy, media, entertainment, retail and other consumer industries, as well as the public sector.

CloudEXPO is the world's most influential technology event where Cloud Computing was coined over a decade ago 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.

FinTech Is Now Part of the DXWorldEXPO | CloudEXPO Program!

Financial enterprises in New York City, London, Singapore, and other world financial capitals are embracing a new generation of smart, automated FinTech that eliminates many cumbersome, slow, and expensive intermediate processes from their businesses.

Accordingly, attendees at the upcoming 22nd CloudEXPO | DXWorldEXPO November 11-13, 2018 in New York City will find fresh new content in two new tracks called:

  • FinTechEXPO
  • New York Blockchain Event

which will incorporate FinTech and Blockchain, as well as machine learning, artificial intelligence and deep learning in these two distinct tracks.

Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)

Sponsorship Opportunities Here

Speaking Opportunities Here

Sponsorship and Speaking Inquiries: info@dxworldexpo.com.

FinTech brings efficiency as well as the ability to deliver new services and a much improved customer experience throughout the global financial services industry. FinTech is a natural fit with cloud computing, as new services are quickly developed, deployed, and scaled on public, private, and hybrid clouds.

More than US$20 billion in venture capital is being invested in FinTech this year. DXWorldEXPOCloudEXPO are pleased to bring you the latest FinTech developments as an integral part of our program.

DXWorldEXPO | CloudEXPO are accepting speaking submissions for this new track, so please visit Cloud Computing Expo for the latest information or contact us at info@dxworldexpo.com.

Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)

Sponsorship Opportunities Here

Speaking Opportunities Here

Sponsorship and Speaking Inquiries: info@dxworldexpo.com.

Download Slide Deck ▸ Here

Only DXWorldEXPO | CloudEXPO bring together all this in a single location:

Attend DXWorldEXPO | CloudEXPO. Build your own custom experience. Learn about the world's latest technologies and chart your course to Digital Transformation.

22nd International DXWorldEXPO | CloudEXPO, taking place November 11-13, 2018, in New York City, will feature technical sessions from a rock star conference faculty and the leading industry players in the world.

Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)

Sponsorship Opportunities Here

Speaking Opportunities Here

Sponsorship and Speaking Inquiries: info@dxworldexpo.com.

Download Slide Deck: ▸ Here

Cloud computing is now being embraced by a majority of enterprises of all sizes. Yesterday's debate about public vs. private has transformed into the reality of hybrid cloud: a recent survey shows that 74% of enterprises have a hybrid cloud strategy. Meanwhile, 94% of enterprises are using some form of XaaS - software, platform, and infrastructure as a service.

With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend and learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.

Every Global 2000 enterprise in the world is now integrating cloud computing in some form into its IT development and operations. Midsize and small businesses are also migrating to the cloud in increasing numbers.

Register for Full Conference "Gold Pass" ▸ Here (Expo Hall ▸ Here)

Sponsorship Opportunities Here

Speaking Opportunities Here

Sponsorship and Speaking Inquiries: info@dxworldexpo.com.

Download Slide Deck: ▸ Here

Companies are each developing their unique mix of cloud technologies and services, forming multi-cloud and hybrid cloud architectures and deployments across all major industries. Cloud-driven thinking has become the norm in financial services, manufacturing, telco, healthcare, transportation, energy, media, entertainment, retail and other consumer industries, and the public sector.

Sponsorship Opportunities

DXWorldEXPO | CloudEXPO are the single show where technology buyers and vendors can meet to experience and discus cloud computing and all that it entails. Sponsors of DXWorldEXPO | CloudEXPO will benefit from unmatched branding, profile building and lead generation opportunities through:

  • Featured on-site presentation and ongoing on-demand webcast exposure to a captive audience of industry decision-makers.
  • Showcase exhibition during our new extended dedicated expo hours
  • Breakout Session Priority scheduling for Sponsors that have been guaranteed a 35-minute technical session
  • Online advertising on 4,5 million article pages in SYS-CON's i-Technology Publications
  • Capitalize on our Comprehensive Marketing efforts leading up to the show with print mailings, e-newsletters and extensive online media coverage.
  • Unprecedented PR Coverage: Unmatched editorial coverage on Cloud Computing Journal.
  • Tweetup to over 100,000 plus Twitter followers
  • Press releases sent on major wire services to over 500 industry analysts.

Secrets of Our Most Popular Sponsors and Exhibitors ▸ Here

For more information on sponsorship, exhibit, and keynote opportunities, contact info@dxworldexpo.com.

Sponsorship Opportunities Here

Download Slide Deck:Here

Speaking Opportunities

The upcoming 22nd International DXWorldEXPO | CloudEXPO November 11-13, 2018 in New York City, NY announces that its Call For Papers for speaking opportunities is now open.

Secrets of Our Most Popular Faculty Members ▸ Here

Submit your speaking proposal Here or by email info@dxworldexpo.com.

Download Slide Deck: ▸ Here

About DXWorldEXPO LLC

DXWorldEXPO LLC is a Lighthouse Point, Florida-based trade show company and the creator of DXWorldEXPODigital Transformation Conference & Expo. The company produces and presents CloudEXPO, DevOpsSummitFinTechEXPO Blockchain Event, the world's most influential conferences and trade shows.

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