Nexeed
    • Introduction
    • User manual
      • Concept
        • iFNS MatLabelCheck
        • INTEGMA
          • eASN (Electronic Advanced Shipping Notice)
          • GRTO (Goods Receipt Transfer Order)
          • Pairing
          • Repacking
        • On setup label creation
      • Basic operation
        • Basic interaction elements
        • Filter tables via filter dialog
        • Search for materials
        • Export results table
        • Adjust table columns
        • Configuring a scanner
      • Material info
        • Material details tab
        • Blocks tab
        • MSD Info tab
        • Monitoring tab
        • Material history tab
        • Setup history tab
      • Material search
        • Label by ID tab
        • Material by ID tab
        • Extended search tab
      • MSD handling
        • Dry Box content tab
      • Inbound events
        • Details of an event
      • Material monitoring
        • Start a monitoring process
        • Add materials for monitoring window
        • Monitoring details page
        • State and state changes
          • Single Stage Thawing
          • Dual Stage Thawing
          • Solder paste monitoring
        • Roles and resources for material monitoring
      • Configuration
        • Blocking Rules tab
        • On setup label creation rules tab
        • Displaying and editing the configuration file
        • Monitoring location definitions tab
        • Monitoring process definitions tab
        • Printer settings tab
        • Printer templates tab
      • Desktop clients
        • Material InfoPanel desktop client
        • Mat climate control desktop client
    • Operations manual
      • Introduction
        • Nexeed Material Management
        • Application security
        • API documentation
        • Nexeed IAS Ops team
      • Overview
      • System architecture and interfaces
      • System requirements
        • mat/materialmanagement-backendservice
      • Migration from previous versions
        • Migrate Material Management from version 2.11 to 3.0
        • Migrate Material Management from version 3.0 to 3.1.x
        • Migrate Material Management from version 3.1.x to 3.2.x
        • Migrate Material Management from version 3.2.x to 3.3.x
        • Migrate Material Management from version 3.3.x to 3.4.x
        • Migrate Material Management from version 3.4.x to 3.5.x
        • Migrate Material Management from version 3.5.x to 3.6.x
        • Migrate Material Management from version 3.6.x to 3.7.x
        • Migrate Material Management from version 3.7.x to 3.8.x
        • Migrate Material Management from version 3.8.x to 3.9.x
        • Migrate Material Management from version 3.9.x to 3.10.x
        • Migrate Material Management from version 3.10.x to 3.11.x
        • Resources mapping from MES to IAS
      • Setup and configuration
        • Helm Configuration
          • materialmanagement-backendservice
          • materialmanagement-shared
        • Installation guide
        • Operation in hybrid mode - overview
        • Installing MatClimateControl with MES Installer
        • General information about configuration
        • Installing MaterialInfoPanel with MES Installer
        • General information about configuration
      • Start and shutdown
      • Regular operations
        • MSD Buffer timespan handling
        • Tenant data removal
        • Runtime configuration handling
        • Background jobs
      • Failure handling
        • Authorization troubleshooting
        • Database-migration troubleshooting
      • Backup and Restore
      • Logging and monitoring Material Management
      • Known limitations
        • Multitenancy capability
        • On premise
        • Database support
    • API documentation
      • HTTP API
      • Restricted HTTP API
    • Glossary
Material Management
  • Industrial Application System
  • Core Services
    • Block Management
    • Deviation Processor
    • ID Builder
    • Multitenant Access Control
    • Notification Service
    • Ticket Management
    • Web Portal
  • Shopfloor Management
    • Andon Live
    • Global Production Overview
    • KPI Reporting
    • Operational Routines
    • Shift Book
    • Shopfloor Management Administration
  • Product & Quality
    • Product Setup Management
    • Part Traceability
    • Process Quality
    • Setup Specs
  • Execution
    • Line Control
    • Material Management
    • Order Management
    • Packaging Control
    • Rework Control
  • Intralogistics
    • AGV Control Center
    • Stock Management
    • Transport Management
  • Machine & Equipment
    • Condition Monitoring
    • Device Portal
    • Maintenance Management
    • Tool Management
  • Enterprise & Shopfloor Integration
    • Archiving Bridge
    • Data Publisher
    • Direct Data Link
    • Engineering UI
    • ERP Connectivity
    • Gateway
    • Information Router
    • Master Data Management
    • Orchestrator

Nexeed Learning Portal

  • Material Management
  • Operations manual
  • Regular operations
  • Runtime configuration handling

Runtime configuration handling

With the term Runtime Configuration, we mean those configuration values, which the user can update during runtime without a need to restart the service(s). Please see runtime_configuration section for more information about the configuration keys, and the usage of the UI for updating/downloading configuration.

This section is focusing on a different area, about how the configuration behaves in the background, and is aiming to highlight important notes.

Configuration usage in the service

Since the configuration is rather static, but most of the use-cases are needing some kind of business configuration, these values are cached in all service instances (pods), so the access to the values are fast, and does not slow down the cycle-time. In order to make sure all caches are up-to date, it is required to refresh them in case an update to the configuration happens. This is done via the message broker (messaging_middleware)

Configuration updates via message broker (messaging_middleware)

As a prerequisite lets assume that the installation is running with 2 replicas. Whenever the user is updating the configuration on the UI, one of the replicas will serve the request. This replica will refresh the values in the database, and also refresh its own cache.

In order to refresh the other replica’s cache as well, at the end of the request the initial replica will publish a message to the message bus, to notify every other interested parties about the change. All replicas are subscribed to this notification. The replica initially sending the notification will simply ignore it. The other replicas will process the message and re-read the configuration from the database, and will update their cache with the new values.

In case the message broker (messaging_middleware) is unavailable, there is a fall-back mechanism in place, which will refresh the configuration every five minutes.

Queue handling

As described above, all of the replicas will try to subscribe to the internal notifications about configuration updates. In order to do so, all replicas will create a queue, which contains the InstanceId of the replica. This queue will then connect to the x.materialmanagement.domain exchange which forwards the notification to all connected queues. Whenever a pod is stopped, it will teardown its queue, so there are only queues alive for instances which are currently running. As an example for a system with 2 replicas:

cachesync queues

Contents

© Robert Bosch Manufacturing Solutions GmbH 2023-2025, all rights reserved

Changelog Corporate information Legal notice Data protection notice Third party licenses