📜 ⬆️ ⬇️

Possible architecture of building software online stores

For the conference of the UIF, I wrote a report on the architecture of online stores, one excerpt from which I want to present to the public for discussion. The whole report will be published later (or you can read it on the website of the URIF ).

Possible architecture of building software online stores.

Single core architecture.
Popular and most common. All CMS for websites and many CMS for shops work on it, such as shop-script, phpshop, joomla, netcat, oscommerce and hundreds more solutions from professional to student. This is the most common scheme. One base and one set of scripts
Dual-core architecture.
This is an architecture that is known to a wide range of consumers less and therefore we will describe it in more detail today. Dual-core architecture, for example, used Ozone. It is used in CMS for stores like Melbis Shop and OSG.
The difference is that there are actually two databases - one on the server on the Internet - buyers work with it. The second - on another server - the store staff works with it. Asynchronously, the second is replicated to the first. Variants of such replication may be different.
Theoretically, for a two-base architecture, this, of course, is not necessary, but in practice, in these solutions, staff always use the window interface, and not the web browser — this allows a significant increase in work productivity. Those. In addition to the two bases, there are also two parts - a server for customers and an application for staff. Why is this architecture used less often than single core? Obviously because the development of such a system is much more expensive, in addition, its use, installation is also more difficult for the user - this is a whole complex. Why is it still used? Working with the store is much more convenient, more functional, the overall system performance is higher, security is much better.


Pros and cons of each system.

The advantages of a single-core scheme are relatively inexpensive development of such a software package and, as a result, low price, up to quite working free options. Normal multiplayer mode, the ability to quickly and inexpensively add, rewrite anything.
Disadvantages are poor performance of managing the product base by managers, poor convenience of such management, and a large server load. Even in fairly successful schemes, wherever you can use Java, Ajax, etc., the interface is still more constrained and slower. Batch operations with goods, often requiring a large amount of data from the server, are also problematic. Driving back and forth megabytes (tens of megabytes) is not always the best solution. With such resource-intensive server operations, there may be problems with buyers accessing the site.
The advantages of a dual-core scheme — by storing data on a server on your network or directly on a computer, you can perform any, most demanding operations on all products, without fear of performance problems leading to loss of orders. We have unlimited speed of the interface with the base and all its window advantages. We can take orders in case of lack of communication with the Internet. We can be engaged in filling the store in the absence of communication with the Internet. The second non-internet database is actually unavailable to hackers.
Cons - in some cases, the restriction of the multiplayer mode, complexity, high cost, sometimes less cross-platform. That's all about theory.

Known interesting solutions.

In CMS and self-written solutions for ordinary sites, the dual-core architecture is not used. Because it is not needed. The content of a regular site is text, group computational operations on which are not used. But the OZONE store was one of the first to switch to dual-core architecture.
http://www.microsoft.com/Rus/Casestudies/CaseStudy.aspx?id=183
“The Ozone web-shop window and the back-office application (warehouse, procurement, work with goods, content management, etc.) were operated on a single database. The user interface of back-office applications was built on the basis of the web interface using Allaire Cold Fusion technology. Using a single database for both Ozone clients and back-office applications led to a high database server load and, as a result, the online store was slow. While simultaneously accessing the Ozona website of one hundred and more users, the website loading approached 100%. This often led to a reduction or even cancellation of the planned advertising campaigns - the system did not allow processing requests from attracted customers, ”says Alexei Timonin, Ozon’s Technical Director. The development and implementation of the new system took place in stages. At the first stage, a system of back office applications was developed and implemented. Microsoft SQL Server 2000 Enterprise was used as a DBMS, the user interface was implemented on Borland Delphi 5. The new bekofis worked on a separate database from the showcase, the data was exchanged using a specially written asynchronous data exchange module between the Microsoft DBMS and Sybase. ”
Unfortunately, the article does not say how the OZONE is functioning now, so we can only guess from the context that they still didn’t just work at one time dual-core, but remained on such a scheme. CMS OSG is also interesting. In fact, the main base there is “1C” and data from it is transferred to a web server on which the store is already functioning (Microsoft SQL Server, Microsoft Internet Information Services, .Net Framework 1.1. Another good dual-core solution is Melbis Shop . Working with the store is through a convenient windows interface.

')

Source: https://habr.com/ru/post/57064/


All Articles