Overview

Problem

The Notify Service has several limitations, such as being resource intensive and not scaling well with the number of subscribers.

Obsolescence of current technology CORBA, used in ACS, which is no longer maintained, or its maintenance is limited. This project will also work as a first stone for the study of potential CORBA replacement.

CORBA Services include:

  • Messaging (request/response and publish/subscribe) (Notification Channel)

  • Interface Repository

  • Logging

  • Error management

  • Alarms

  • Configuration database server

Objective: Find a replacement for the notification channel. Move away from CORBA while keeping in place the current API provided by Common Software.

Requirements: 

  • Should be as transparent as possible having the same features and requirements of the previous Notify Service implementation.
  • ACS Notification Channel alternative should hide as much of the underlying technology as possible. 
  • It must be possible to set QoS properties of channels. 
  • Event channels should never discard events and events should be delivered to consumers in a timely manner.

Background

Data Distribution Service (DDS) as an alternative to CORBA Notify Service: Data distribution service.PDF

Suitable Options for Replacement

  • ActiveMQ

  • RabbitMQ

  • Kafka

  • Pulsar

  • ZeroMQ

Chosen Solution

ActiveMQ Artemis (latest version of ActiveMQ). Some of its relevant characteristics for which it was chosen are:

  • Implements the specification of JMS.

  • It is open source, multi-protocol, Java-based messaging server.

  • Has connectivity from C, C++, Python.

  • Supports many protocols, including one of its own: Openwire.

  • It is push-push and reliable, just as the current CORBA Implementation for the Notification Channel.

More details for the technology used can be found here.

Approach

  1. Initial study of current software and technology.
  2. Design.
  3. Implementation:
    • Language: C++.
    • Maintain current API.
  4. Testing.
  5. Results and documentation.


Ghantt Chart

Initial Presentation

All the previous information can was presented in the initial presentation of the Summer Studentship.

Download: ALMA Notification Channel Replacement - Initial Presentation.pdf

  • No labels