Backend server

Prev Next

This article explains the architecture of the Grassfish backend and features of the backend services.

Backend architecture

The following diagram illustrates the Grassfish backend architecture. It’s structured as follows:

  • The Azure Kubernetes Service (AKS) cluster runs several specialized services.

  • These services collectively handle the content management system (CMS) logic, data processing, and integrations.

  • Data resides in the Azure SQL Managed Instance.

  • Media files are stored in Azure File Storage.

IXM Server Architecture

Backend services

The Grassfish backend uses the following services:

Data Gateway

Data Gateway is a backend service. Its main tasks and features are:

  • Controls media imports and creates metadata in the database.

  • Performs cleanup tasks, such as deleting old files or database cleanup.

  • Sends system notifications (GNS).

  • Performs technical support functions, such as cyclic redundancy checks (CRC32) to ensure data integrity.

Technical information:

Standard service name

GV2 DG

Service directory

<Grassfish-RootDir>\DataGateway

Log file

<Grassfish-RootDir>\log\DataGateway

Interfaces

  • Access to the MS SQL database

  • Access to the central file share

  • Access to the SMTP server (optional)

Data Calculator

Data Calculator is a backend service. Its main tasks and features are:

  • Calculates playlists and playback rules based on the CMS configuration.

  • Triggers content updates when bookings or layouts change.

Technical information:

Standard service name

GV2 DC

Service directory

<Grassfish-RootDir>\DataCalculator

Log file

<Grassfish-RootDir>\log\DataCalculator

Interfaces

  • Access to the MS SQL database

  • Access to the central file share

Media Handler

Media Handler is a backend service. Its main tasks and features are:

  • Generates thumbnails and previews for the CMS.

  • Performs transcodings as needed and reads media metadata.

Technical information:

Standard service name

GV2 MediaHandler

Service directory

<Grassfish-RootDir>\MediaHandler

Log file

<Grassfish-RootDir>\log\MediaHandler

Interfaces

  • Access to the MS SQL database

  • Access to the central file share

Reporting Gateway

Reporting Gateway is a backend service. Its main tasks and features are:

  • Runs periodic background jobs (reports, aggregations, exports).

  • Designed as a plugin system to add custom reports without modifying the core functionality.

Technical information:

Standard service name

GV2 RG

Service directory

<Grassfish-RootDir>\ReportingGateway

Log file

<Grassfish-RootDir>\log\ReportingGateway

Interfaces

  • Access to the MS SQL database:

    • Grassfish live database

    • Grassfish reporting database

  • Access to the central file share

  • Access to customer-specific import interfaces for file imports from an FTP directory or requests via external web interfaces (optional)

UDC

Universal Data Controller (UDC) is a backend service. Its main tasks and features are:

  • Provides a generic data model for structured external data.

  • Performs periodic imports (REST, CSV/Excel, XML/JSON, Database) and writes normalized data to the CMS database.

  • Replicates data to the local player database so that spots and HTML content can use it locally.

Technical information:

Standard service name

GV2 UDC

Service directory

<Grassfish-RootDir>\UdcService

Log file

<Grassfish-RootDir>\log\UDC

Interfaces

  • Access to the MS SQL database

  • Access to the central file share

  • Access to customer-specific import interfaces for file imports from an FTP directory or requests via external web interfaces (optional)