Skip to content

JasperReports IO At-Scale Modules

JasperReports IOĀ At-Scale contains several modules, also called pods, described in the following table. Each of these modules becomes a separate Docker image:

Module Description
jrio-client This module contains a sample HTML application with documentation. The jrio-client module is also used for sample viz.js implementation that is used in an embedded report viewer.
jrio-manager This is the main manager or orchestrator module that also contains the license file. There is always exactly one instance of this module in the cluster.
jrio-reporting This is the main reporting application that generates reports from JRXML, but the reports are generated as serialized Java objects to be stored in the Redis cache module.
jrio-rest This module is responsible for inbound and outbound communication from the cluster, such that all tasks are input and output through this module. Its k8s service should be exposed.
redis This module is responsible for caching and queuing all report creation tasks in a Redis queue. The jrio-reporting and jrio-rest pods monitor the Redis queue for new tasks requests or task results. The jrio-manager module also checks report execution status which is stored in the Redis queue.
jrio-export The module that will generate the requested output format from the Java objects stored in the cache of the redis module. jrio-export stores all generated outputs back into the Redis cache.