Wiki source code of Systemarchitektur
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{content/}} | ||
| 2 | |||
| 3 | {{formcycle/}} is a pure Java application that can be run on any operating system that supports Java and has installed an application server such as Tomcat or JBoss. It is based upon a modularized or layer oriented component architecture. All interaction with a database is managed by the //Java Database Connectivity API// ({{smallcaps}}Jdbc{{/smallcaps}}). | ||
| 4 | |||
| 5 | == System architecture without a frontend server == | ||
| 6 | |||
| 7 | {{figure image="systemarchitektur.png" width="300"}} | ||
| 8 | Architecture of {{formcycle/}} when run with only a single master server. | ||
| 9 | {{/figure}} | ||
| 10 | |||
| 11 | {{table preSort="0-asc" dataTypeAlpha="0" colWidth="200-500"}} | ||
| 12 | |=Module|=Description | ||
| 13 | |Frontend|Administration interface | ||
| 14 | |API (REST)|REST interface for administrative settings. May be used to integrate the {{formcycle/}} interface into other programs. | ||
| 15 | |API (RPC)|Provides access to form records, states, workflow processing, actions and more. | ||
| 16 | |Logic|Logic layer of the application. | ||
| 17 | |Logic (Plug In)|Provides support for custom plugins that provide additional functionality. | ||
| 18 | |DAO|Data access object, for accessing the database ({{smallcaps}}Jdbc{{/smallcaps}} databases) or the file system. | ||
| 19 | |Common|Services and functions common to all layers. | ||
| 20 | {{/table}} | ||
| 21 | |||
| 22 | == System architecture with an optional frontend server == | ||
| 23 | |||
| 24 | {{figure image="systemarchitektur2.png" width="300"}} | ||
| 25 | Architecture of {{formcycle/}} when using both a master server as well as a frontend server. | ||
| 26 | {{/figure}} | ||
| 27 | |||
| 28 | Setting up a [[frontend server>>doc:Formcycle.SystemSettings.UserInterface.FrontendServer]] may be useful for the following use cases: | ||
| 29 | |||
| 30 | * network installation, such as local intranet + DMZ | ||
| 31 | * load distribution | ||
| 32 | * splitting (multiple client, each with their own frontend server) | ||
| 33 | * customer specific extensions (such as integrating {{formcycle/}} into existing user interfaces) | ||
| 34 | |||
| 35 | {{table dataTypeAlpha="0" preSort="0-asc" colWidth="200-500"}} | ||
| 36 | |=Module|=Description | ||
| 37 | |Frontend|Status information of the current server, or own interfaces | ||
| 38 | |API (RPC)|Provides access to form records, states, workflow processing, actions and more. | ||
| 39 | |Common|Services and functions common to all layers. | ||
| 40 | |BSV|Bidirectional socket connection between the master server and the frontend server. | ||
| 41 | {{/table}} |