Deployment architecture
The Genero Report Writer solution can be implemented using a distributed or non-distributed architecture, on one machine or across multiple machines.
There are three deployment architectures:
- non-distributed mode
- local distributed mode
- remote distributed mode
Non-Distributed or Distributed mode
The first decision you will have to make is whether to use non-distributed or distributed
mode.
- In non-distributed mode, each report starts a new Java Virtual Machine (JVM).
- In distributed mode, the report engine is started as a daemon in listen mode (using
greportwriter –l
). Report applications process reports by connecting to this daemon.
Non-distributed mode is the default, and does not require additional configuration. It is good for development.
Distributed mode offers faster processing for short documents. The startup time of the JVM that is incurred for every report in regular mode can exceed the processing time of the report, causing the overall performance to be poor. In distributed mode, the JVM is started and initialized only once. For short documents, the improvement in performance can be dramatic.
Important: In production, always choose distributed mode to avoid slow start for short
documents and extra resource consumption.
Local Distributed or Remote Distributed mode
With distributed mode, you have the option to be on a single machine (local) or on different machines (remote).
In local distributed mode, the application and the Genero Report Engine are started
on the same machine. The advantages of a local distributed architecture:
- Local distributed mode provides for faster processing times.
- Local distributed mode allows you to manage your system on one machine.
In remote distributed mode, the application and the Genero Report Engine are started
on different machines. The advantages of a remote distributed architecture:
- Your IT policy might require the GRE and application sit on separate machines.
- Remote distributed mode allows for improved scalability. Formatting graphical reports is CPU intensive, and CPU is usually expensive on a server optimized for IO (such as servers running the DVM and/or the database). Remote distributed mode allows offloading the report processing to a cheaper machine, such as a standard PC.
- The required fonts might sit on a specific machine. Specifically, a dedicated report formatting PC could be installed with Windows™, which has the additional advantage of handling fonts and printers in a user-friendly way.