Architecture

Architecture
[ˈɑːkɪtɛktʃə]

  1. The art or practice of designing and constructing buildings
  2. The complex or carefully designed structure of something
  3. The style in which a building is designed and constructed, especially with regard to a specific period, place of culture.

The System Architecture of OPTANO

The term architecture comes from the Latin “architectura”. The systematic design and construction of buildings was originally the main element of architecture. However, system architecture is also essential in complex IT systems: relationships and interfaces between the system elements and to their environment are identified and structured, security and transaction concepts are defined. OPTANO is based upon both the “basic” client server architecture but also on a system architecture with an application server as an optional element.

The “basic” client-server architecture

In order to enable several users to access a database, the database server is the central location which manages the data in the client server model. The users use clients to gain access – either as a program or as a complete system. The functionality (application logic and user interface) is mainly implemented here in the client. The resources which the clients request from the database server deploy this directly so that no other applications are used.

OPTANO client-server-system

Diagram – OPTANO client-server architecture

The client-server model, as shown here, is comparatively easy to create, but it also has its drawbacks. The client, which performs most of the work, needs to be powerful. The installation and modification of the software must be loaded (automatically or manually) onto every client. Data-intensive operations with a high volume of data transfer can lead to a network overload. The direct data access of clients to the database server also poses a security threat – in particular in the case of enterprise applications.

Client-server architecture with application server

In order to overcome the disadvantages of the “basic” client server architecture, a further element can be added to the system – the application server.

What is an application server?

The application server is a server program in the client-server system which provides the execution environment for an application program. The client cannot access the database server directly but only retrieve and process the data via the application server. The result is that the client and database server are decoupled which yields a great many advantages.

Application [æplɪˈkeɪʃn̩]
an EDP program or piece of software designed to fulfill a particular purpose

Server [ˈsœːɐ̯vɐ]
a computer in a network that is used to provide services (such as access to files or shared peripherals) to other computers in the network

The application server in the OPTANO system architecture

We exploit these advantages in OPTANO’s system architecture with the optional deployment of an application server. The application server – installed on an IIS (Internet Information Services from Microsoft) – forms a security boundary between the client and the database. Database access is encapsulated by an open interface (JSON). As the client has no direct access to the database, this ensures that he is only permitted to view and process the data that is released to him. The communication of the client with the application server is encrypted via HTTPS protocol. The optionally deployed scheduler in the OPTANO system architecture also accesses the database server by means of the application server.

OPTANO applicationserver

Diagram – OPTANO system architecture with application server (optional) 

The OPTANO system architecture with its application server offers not only security but also the advantages of stability and functionality.

The application server provides security

Decoupling the client and database server is an important aspect for enterprise applications, above all. This is particularly so in large companies with many clients where controlling database access is imperative. The  client can perform transactions or authentications for directories and databases via the application server. In OPTANO, Windows authentication is standard but extensions are also possible. OPTANO is so flexible here that even other authentication methods can be deployed. The application server also checks the authorization of the accessing client. By defining roles and permissions you determine who is allowed to do what on the database.

The application server provides stability

Transactions and authentications with the application server are possible thanks to defined interfaces. These offer stability and scalability. A new interface enables client acess to a new version of the database. If the current version is not required, however, the old interface remains.

Furthermore, the application server is stateless. This means that the server stores neither the user nor the session so that the system continues to run reliably if the system crashes, reloads or if another server is deployed.

The application server means functionality

The higher development costs involved in a system with an application server are balanced out by easier and better scalability and maintenance. On the one hand, scalability is higher – particularly in the case of enterprise applications by means of Load Balancing: if many clients generate a high volume of requests which would overload an individual application server, the deployment of several parallel working application servers is effective. A load balancer- which is upstream to the application server – distributes the requests and thus makes applications scalable.

On the other hand, maintenance is easier for IT administrators. They can request information on the status of the server via “Health monitoring” – also automatically.

Finally, it should be mentioned that the entire OPTANO System Architecture can be executed in Cloud and thus offers utmost scalability. Cloud service models such as SaaS (Software as a Service) or IaaS (Infrastructure as a Service) are deployed here.

The application server as an optional element of the OPTANO system architecture offers a large number of advantages. If you would like to learn more, contact our experts.

Similar topics you may also find interesting…