Client-server operation mode is used in workgroups and enterprises, and is implemented as a three-tier architecture:
1C:Enterprise Client
1C:Enterprise Server Cluster
Database server
An important feature of 1C:Enterprise 8 interaction with database is that there are no difference for user or application developer, which ever operation mode is used with the applied solution. A major benefit of 1C:Enterprise 8 framework takes up all issues of interaction with a database. Developers and users, do not have to think about the database issue.
A client application interacts with a cluster server, and the cluster accesses the database server, if necessary.
1C:Enterprise server cluster can operate on one same computer, or on different ones. This feature allows system administrators to distribute workload across several servers, if it is necessary.
Using a server cluster allows to execute the most complicated data processing operations by the cluster. Then the client application will get only the result of the processing. On enterprise scale it is much easier to upgrade a server cluster, than the whole stock of client computers.
Deploying of a server cluster and its administration is quite simple. For example, creation of a database is done during launching of the Designer (same as for file operation mode).
Supported Database Types
MS SQL
1C:Enterprise 8 uses MS SQL Server features for efficient information retrieval from a database:
Query mechanism is designed to maximise use of MS SQL Server to perform calculations and report preparation.
Browsing of long dynamic lists is provided without many database calls. Users are provided the functionality of efficient data search, filtration and sorting.
PostgreSQL DBMS
When running in client-server mode 1C:Enterprise 8.1 (and later) supports operation with PostgreSQL DBMS.
PostgreSQL is an open-source DBMS and 1C:Enterprise 8.1 (and later) uses a modified version of PostgreSQL. PostgreSQL installation package for 1C:Enterprise is included into the 1C:Enterprise 8 distribution kit. The installation package contains versions for MS Windows and Linux operating systems.
1C:Enterprise 8 has some features in operation with PostgreSQL, concerning using of transactional locks:
In automatic lock control in transactions mode database table locks are used.
In managed locks in transactions mode database field and record locks are used.
IBM DB2®
IBM DB2 is another database management system supported by the platform. There are no specifics in operation of 1C:Enterprise 8 with IBM DB2 database.
Oracle
Oracle® database is used in the same way as other DBMS. The illustration below shows the place of a DBMS in client-server architecture with 1C:Enterprise 8 server cluster.
This mode is intended for personal use, or small number of workplaces in a LAN (up to 5 or so).
In this mode all information base data (configuration, database and service information) is located in a single file.
There is no need in additional software tools to work with the information base — it is enough to have OS and 1C:Enterprise 8.
File mode provides high integrity of information base and a simple way to create backup copies (by means of simple copying of the information base file to some backup location).
The transaction mechanism provided by the platform minimizes the risk of data lost or corruption in cases like PC or network power failure. But of course, using client-server operation mode gives better reliability since data on the server side are independent and safe from possible failures on client computers.
The platform distribution kit includes a software utility for testing and repairing of file database after failures.
Operation with File Database Using Thin and Thick Clients
When thick client is used, the client itself implements all the functionality of the file database.
If thin client is used, then a special server environment is established on the PC where the client is running, including —
loading server components required for system operation,
loading the configuration,
other actions necessary for normal system operation with the information base.
From point of view of thin client, the established environment acts as a server. From point of view of the operating system the environment is not a separate process and is executed within the thin client process.
Operation with File Database over a Web-Server
It is possible to operate with file database over a Web-server using thin client or Web-client.
In this case, the Web-server extension module creates a similar server environment on the Web-server, for each information base. The component for file database operation and information base data are loaded right into the web-server address space. The Web-server load increases significantly; users of one information base cannot operate in parallel — all their queries are put into one queue.
Therefore, this operation mode is used mainly for testing purposes, or for very limited workgroups in some special cases.
Client-server Mode
This mode is implemented on the basis of three-tier client-server architecture (see picture).
The client-side software interacts with 1C:Enterprise 8 server cluster, and the cluster, if necessary, interacts with a database server (one of the supported database servers). Physically, a server cluster and database server may be located on one PC, as well as on different computers. This allows an administrator to distribute workload between servers, if necessary.
1C:Enterprise 8 server cluster allows for most complex data operations to be concentrated on it. For example, execution of complex queries is performed on server side, while client software receives only the required data selection. Usually, performance of server cluster is simpler to upgrade, than to upgrade a whole workgroup hardware (clients).
Another important point of this architecture is structured user access to an information base which is more efficient to administer. All user access goes through 1C:Enterprise 8 server cluster. To access a database, user only needs to specify the cluster name and the information base name required. The system then asks for user name and password.
It is also easy to install a server cluster. For example, an information base is created using the Designer tool (just the same as for the file mode). The 1C:Enterprise 8 distribution kit includes the client-server administration utility that gives means to manage information bases and user access.
For more information on client-server interaction, see the ’client-server interaction model’ section.