Opens in a new tab

High-performance eCommerce systems

Have you ever wondered how some websites handle thousands of visits and how their eCommerce system manages to respond to all of them? Have you noticed that when you have several applications running on your PC, everything starts to slow down? So how is it possible for websites to handle the load of thousands of people browsing, often all at the same time?

The answer is simple and complex at the same time, and fairly technical, but I’ll try to explain it without jargon—let’s see if I can…

We could compare a high-performance eCommerce system to a company that mass-produces any kind of parts, where, to simplify, we’d find the following:

1. Access control at the factory.

2. The parts sales department.

3. The production departments.

a. Design and mold-making department for the parts

b. Manufacturing department

c. Parts warehouse

 

Access control at the factory would correspond to the system’s security layer, where a request sent from a web browser is either blocked or allowed through. The security layer ensures that malicious requests, or those rejected under various criteria, don’t reach the system, while also improving system performance.

 

Next, once access control lets the request through, it reaches the sales department, which checks whether the response (part) exists and is available; if so, it delivers it to the customer immediately. If, however, the response (part) isn’t in stock, the system issues a production order to the head of design and then a manufacturing order to the head of production with the newly designed mold. After a while, the response (part) is ready to be delivered to the customer. You’ll see that a response (part) that already exists and is available requires no work and can be delivered immediately, whereas a new response (part) takes much more work and time. 

Well, this comparison broadly describes how high-performance systems work. But we can go into a bit more detail to fully understand the differences that could arise and the improvements that can be applied on this basis so that more responses (parts) can be delivered and the system doesn’t collapse, no matter how many requests it receives. 

 

The heart of the system is the manufacturing department—above all, its manager(s) and how they coordinate. What would happen if, instead of one manager, we had 2 perfectly coordinated ones? They could distribute more manufacturing and design work in the same amount of time. And if we also added more workers? We’d have more production capacity, right?

 

This shows that, just as a factory gets better results depending on how it optimizes its organization and work procedures, a complex computer system like this one follows the same principles. Performance is driven by the same factors—although it’s true that a system like this has many more parameters to tune than a factory.

Finally, we haven’t covered logistics, an equally important factor: if we don’t have adequate transport capacity to move the information (parts) from one place to another, no amount of production capacity will improve our results. What logistics is to a factory, internet bandwidth is—with some differences—to a system like this, and instead of measuring it in highway lanes, we’d measure it in kilobits or megabits. 

 

Related posts