The architecture of Open ERP¶
To access Open ERP you can:
- use a web browser pointed at the Open ERP client-web server, or
- use an application client (the GTK client) installed on each computer.
The two methods of access give very similar facilities, and you can use both on the same server at the same time. It’s best to use the web browser if the Open ERP server is some distance away (such as on another continent) because it’s more tolerant of time delays between the two than the GTK client is. The web client is also easier to maintain, because it’s generally already installed on users’ computers.
Conversely you’d be better off with the application client (called the GTK client because of the technology it’s built with) if you’re using a local server (such as in the same building). In this case the GTK client will be more responsive, so more satisfying to use.
Web client and GTK client
There is little functional difference between the two Open ERP clients - the web client and the GTK client at present (since early versions of 5.0). In earlier versions, the web client had fractionally greater functionality.
When you’re changing the structure of your Open ERP installation (adding and removing modules, perhaps changing labels) you’ll find the web client to be irritating because of its use of caching.
Caching speeds it all up by keeping a copy of data somewhere between the server and your client, which is usually good. But you may have made changes to your installation that you cannot immediately see in your browser. Many apparent faults are caused by this! The workaround is to use the GTK client during development and implementation where possible.
The Tiny company will continue to support two clients for the foreseeable future, so you can use whichever client you prefer.
An Open ERP system is formed from three main components:
- the PostgreSQL database server, which contains all of the databases, each of which contains all data and most elements of the Open ERP system configuration,
- the Open ERP application server, which contains all of the enterprise logic and ensures that Open ERP runs optimally,
- the web server, a separate application called the Open Object client-web, which enables you to connect to Open ERP from standard web browsers and is not needed when you connect using a GTK client.
Terminology: client-web – server or client?
The client-web component can be thought of as a server or a client depending on your viewpoint.
It acts as a web server to an end user connecting from a web browser, but it also acts as a client to the Open ERP application server just as a GTK application client does.
So in this book its context will determine whether the client-web component is referred to as a server or a client.
The web application used to be known as “eTiny”. Its name changed to “client-web” as Tiny ERP was renamed to Open ERP, but its characteristics have generally stayed the same.
PostgreSQL, the relational and object database management system.
It’s a free and open-source high-performance system that compares well with other database management systems such as MySQL and FirebirdSQL (both free), Sybase, DB2 and Microsoft SQL Server (all proprietary). It runs on all types of Operating System, from Unix/Linux to the various releases of Windows, via Mac OS X, Solaris, SunOS and BSD.
These three components can be installed on the same server or can be distributed onto separate computer servers if performance considerations require it.
If you choose to run only with GTK clients you won’t need the third component – the client-web server – at all. In this case Open ERP’s GTK client must be installed on the workstation of each Open ERP user in the company.