E-Commerce IT ConsultingIT Consulting determines the best way to build the e-commerce website based on the strategy. It is a how-to guide for development, IT support, and compliance with the Payment Card Industry. Deliverables provide:
- Selection of technologies and services such as deployment regions, programming languages, and DNS services.
- Data structures for information shared between the website and other applications.
- Completion of business requirements. Frequently omitted details are for security, availability, disaster recovery, and response time.
- Detailed design documents so others can figure out what is going on later.
- The project plan to implement the solution.
- Plan to mitigate technical risks.
- Respond to audit questions from the Payment Card Industry and Privacy Regulators, then fix any gaps.
Website MigrationWebsite migrations fix underlying issues by replicating text, images, and videos from the old platform to a better one.
Content MigrationContent migration preserves existing investments while removing problematic implementations. Common goals are:
- Implement data drive marketing to grow the business.
- Add technical SEO like Google Rich Results for Products to improve page ranking.
- Remove bloat that slows down page response times.
- Integrate with other systems.
- Recover the online reputation of the domain with search engines.
- Fix broken links and redirects.
- Comply with Payment Card Industry standards to retain merchant banking accounts.
Transition PlanningThe transition plan preserves the online reputation by maintaining the existing external links. However, it only becomes relevant when there is commercial value in the existing backlinks and organic search traffic. The plan includes the following:
- Create SEO-friendly URL names.
- Implement an HTTPS-only site, as the Payment Card Industry (PCI) requires.
- Switch domain names.
- Drop the www prefix to shorten the URL names.
- Map pages to a single URL to improve SEO.
ReliabilityThere are many 3rd party testing tools to validate websites. Using them improves SEO because the website renders correctly in all scenarios, meaning your website can appear in any device's search result. Just because the page appears on your web browser, only assume that is the case for some users. Many websites show a massive number of errors using the following tools. We drive test scores to perfection because we want the best solution for our customers.
- Google Rich Results for SEO
- Google Mobile-Friendly Test
- Google Page Speed Insights for page response times.
- Facebook Sharing Debugger
- W3C Markup Validation
Sub-Second Page Response TimeA fast website enhances the user experience. It makes the website accessible to slower clients, over slower networks, and at greater geographic distances from the server. That increases the page ranking. Our designs are the fastest on the web because we factor performance into every design decision.
The websites we build are 100% approved by Google performance per, as shown in the report below.
Number of URLs per PageThe number of URLs on a web page is the number of separate downloads the browser needs to complete to render the page. The fewer there are, the faster the page loads. The following chart shows the number of CSS files per page across 100,000 websites. Reducing them is critically important because the browser waits for all of them before starting to render the page. So fast sites have zero CSS files, as shown in green. Most e-commerce services are deep into the red.
Payload EfficiencyAn efficient payload is faster because it reduces the data sent through the network and the time rendering the content. Failure to keep code efficient leads to bloating. The following chart shows the ratio of visible text on a page over the payload size. It outlines that 13% of websites allocate 1% or less of the payload to content. The 4 to 15% range tends to be optimal because pages should provide metadata for SEO, security, and layout. There are many ways to increase payload efficiency. The most effective are:
- Send mobile-sized images to mobile devices and larger ones for desktops.
- Optimize image file types. For example, SVG work best with charts and logos.
- Tune image file settings. Specific adjustments depend on the file type, such as setting JPEG quality to 60% typically causes no visible degradation but can dramatically reduce file sizes.
- Strip excess spaces and comments from text files before deploying them to production.
- Compress all content sent over the network. It may seem counterintuitive, but compressing on the server and decompressing in the browser is faster.
Multi-Regional DeploymentsClients can deploy websites into multiple regions to enhance scalability, system availability, and page response time. Our solution is faster and more robust than a Content Delivery Network (CDN).
Selecting High-Performance TechnologyThe best response times come from websites using the fastest technologies. We find them by analyzing data from over 100,000 local businesses. We look at DNS, networking, programming languages, and everything else that correlates with speed. Then we prototype solutions to optimize the hardware with the configuration settings. The most critical design decisions for performance are: technology decisions are:
- Cache content in local storage. Virtually all websites disable cache on the page-level URL.
- Serve static content with static files. Most Content Management Systems (CMS) recreate the same static content for each user request causing a massive system load.
- Use a hosting platform that guarantees hardware capacity. Many do not, making it impossible to test and tune system performance.
- Minimize the distance between the web server and the web browser because that determines the download speed.
- DNS services materially impact page response times.
- Tune the web server configuration. The process model and thread concurrency make or break performance.
- Use HTTP/2, which efficiently reuse network connections.
Highly Available DesignThe cloud significantly reduces the required investment to obtain high availability. That prevents many outages from happening in the first place and reduces recovery time should it occur. The following sections outline how to increase uptime in a cloud-providing IaaS (Infrastructure as a Service).
Software CurrencyMany issues get fixed by applying current patches. However, most web servers are out of date. For example, WordPress powers over half of the websites but only patches the current version. The following chart shows that 81% of websites are out of support, as shown in the following chart.
Testing EnvironmentsTesting is standard practice to mitigate IT risks, but most website services cannot clone production to build a test environment. Testing becomes increasingly crucial as the sophistication increases. Test environments support:
- Validate solutions updates before exposing them to users.
- Verify the ability to roll forward and back production updates, part of our zero downtime upgrades.
- Provide a sandbox to develop integrations with other systems.
- Allow testers to use 3rd party tools for SEO, performance, security, social sharing, and HTML syntax.
- Support disaster recovery testing.
Network RedundancyNetwork redundancy provides multiple internet connections to the data center. The Border Gateway Protocol (BGP) runs core internet routers and is the network protocol supporting concurrency. Hosting websites in a data center with many BGP links improves speed and reliability. However, many data centers have a single connection, while others have over 30.
Blue / Green DeploymentA Blue/Green deployment tests a deployed production candidate before sending it production loads. Even if the candidate fails after rolling forward, the load can move back to the old version. The old environment remains in place until the new one proves stable, say after a week. The approach maximizes uptime during deployments which is the most unpredictable IT task.
Hard Disk RedundancyHard disk redundancy supports continuous data uptime even when one disk fails. Unlike other types of hardware redundancy, disk redundancy is cost-effective due to the availability of sophisticated technology. If a disk fails, the other disks in the array rebuild the content onto the replacement. It is relevant because disks are a frequent mode of server failure.
Server RedundancyCloud solutions changed design patterns for server redundancy. It does not pre-purchase redundant capacity. Instead, it deploys them on demand and leverages the excess resources of the cloud provider. Even if the provider does not have an exact replacement, hardware virtualization ensures the image will run on different server configurations.
Disaster RecoveryDisaster recovery is the ability to recover from unexpected events. It's a matter of time before a solution crashes. Planning for that event lowers the probability of failure happening in the first place and minimizes the recovery times when it happens.
Disaster Recovery RequirementsIT disasters have well-known failure modes making recovery planning straightforward. A complete set of disaster recovery scenarios are:
- Automate recovery to remove human error and accelerate the processing.
- Plan to purge ransomware and malware from the website.
- Automate hardware replacement.
- Run load test scripts to stress systems while measuring page response times.
Business ContinuityBusiness continuity includes disaster recovery and the surrounding business processes. The supporting IT tasks are:
- Provide documentation to auditors and respond to their queries.
- Support continuity testing and fix gaps.
- Write scripts to simulate failure scenarios.