It is never too early to start planning for the holiday season but starting now—in the summer—will put you on track for ensuring customer satisfaction and holiday success.
Maximize holiday results, reduce risk and lower everyone’s stress levels by involving your technical team and other key business stakeholders and partners within your overall digital ecosystem early on in your holiday planning. We’ve compiled a few peak-season tips below to help get you started.
Don’t forget to check out part 1 of this blog post if you missed it!
Security patches and fixes
It sounds simple, but make sure you allow yourself plenty of time to ensure that your commerce environment is up to date across all tiers, including OS, firewalls, load balancers, databases, and application, web and search servers—all of which need to have the most recent fixes and security updates. This requires coordination across multiple teams to get all of these applied and tested within the various environments, so don’t leave it to the last minute.
Questions to consider:
- Has a recent security scan been conducted, results analyzed, and those deemed a priority acted on?
- What about external penetration testing for potential threats and vulnerabilities? WAF and firewall policy audit?
Database pruning and optimization
A healthy database is perhaps the most critical component of your commerce site. If the database isn’t performing, all the cache optimization in the world isn’t going to get you through Black Friday. Optimization and data pruning should be a well-planned and ongoing activity with additional focus added as the holiday season approaches.
- Do you know how your database is performing?
- Is your database as small as possible?
- Do you have the right indexes on your tables?
- Have you conducted purges of unnecessary data?
If you don’t know how your database performs under normal load, how can you know if it will perform under peak load? Make sure you monitor the data tier and look at the right things. The bigger your database is, the harder it has to work to return results. Have a data-pruning strategy in place to remove or archive outdated data to ensure your database doesn’t have to work harder than needed. Databases in general—and commerce databases and schemas in particular—are very complex. They require a specialized skill set, so make sure you have an expert specific to your commerce platform and not just your database platform.
Agile development methodologies with continuous integration and deployment capabilities are great, but as the holidays approach, every change to the environment—no matter how well tested—opens risk to site performance. Carefully evaluate the balance and consider implementing a code freeze leading up to Black Friday.
You are likely planning a lot of content change activity through the holiday weekend, including promotion changes, marketing landing pages, email blasts, and social media campaigns. Don’t complicate matters with environmental changes or code deployments unless they are absolutely necessary. And if they are, plan extra time for testing.
Performance testing & tuning
Performance testing and tuning can be difficult, time-consuming and costly. Don’t wait until October to decide you need to run a load test. Instead, build it into your day-to-day operations, ideally as part of your CI/CD pipeline, and consider both “back-end” and “front-end” implications. This may require solution architects and/or user experience/interface architects.
Consider these questions:
- Do you have a performance test environment?
- Does it match your production environment?
- Do you test every release for baseline performance?
- Are you generating your traffic externally?
- Are your test scripts or scenarios based on actual analytics data?
- How are your page load times? Is there opportunity through minification to optimize this?
- Are there jobs and system updates that are resource-intensive? Consider placing certain jobs on hold or scheduling them to run at more strategic times to alleviate taxing the system.
Testing in an environment that doesn’t match your production environment—at least in a scaled way that you can extrapolate accurately from—is a waste of time.
Involve your analytics team in the design of your test scenarios so your test is as similar as possible to your actual production traffic patterns. Give special consideration to the areas of your site with the heaviest performance impact. User registrations, add to cart, checkout, and search are good starting points. You won’t know how your website will perform under load if you don’t include these activities in your test with realistic scenarios.
Visibility into all components of your commerce website from various perspectives is essential. If you can’t see how each tier of the environment is performing, your first alert to a website problem may be your customers calling to complain.
These are good questions to ask your operations team:
- Are all endpoints monitored for availability, including third-party calls?
- Do you have real-time visibility into the health of the JVM or runtime?
- How fast are searches returning results?
- Are system jobs colliding or overrunning expected timeframes, causing a domino effect?
- What is the slowest running query to your database?
- What does your website load-time look like from various geographies?
- How is your website performing for your end-users?
- When do your SSL certificates expire?
It is no longer sufficient to have basic environment monitoring (OS, CPU, utilization, memory, and I/O) and alerting. You should know each communication point between every component tier in the environment, how they are performing, and if there is a problem.
End-user monitoring will open your eyes to what your users actually experience. The site may look great from your computer at work where everyone has a fast network connection, close proximity to where the site is hosted, and the same browser version. But what about users on browsers that are older or newer than what your IT department has imaged onto your laptop? Or users with different connected devices on different browsers and variable quality wireless network connections? You need to know how your website will perform under different circumstances.
Review your overall caching strategy, both at the web/app tier within your environment, as well as your content delivery network (CDN). You are using a CDN, right?
- What is your app tier cache hit ratio?
- Are there unnecessary hits to origin from your CDN?
- Is your site properly setting headers to take full advantage of client-side caching?
- Can users inadvertently bypass the CDN?
Every request your app servers make to the database is costly in terms of performance. Take advantage of your platform’s ability to cache these requests. As part of your performance testing for each release, include some profiling to ensure that you haven’t inadvertently added or changed something to cause uncached requests back to the data tier.
Evaluate statistics and reports from your CDN and your web servers. Are there requests that you can offload and cache at the edge, closer to your customers? Nothing is closer to your end-user than their browser, so make sure you’re taking advantage of its cache as well.
A thorough and well-rounded plan to ensure that you are prepared for the holidays will make the season less stressful and more enjoyable for you and your team, and more successful for your business. Not sure where to start? Contact us for help with any questions or if you’re interested in our Seasonal Readiness Health Check, designed to help you build a customized strategy to ensure holiday success during peak seasonal demand.