JACoW logo

Joint Accelerator Conferences Website

The Joint Accelerator Conferences Website (JACoW) is an international collaboration that publishes the proceedings of accelerator conferences held around the world.

Title How to Design & Implement a Modern Communication Middleware Based on ZeroMQ
  • J. Lauener, W. Sliwinski
    CERN, Geneva, Switzerland
Abstract In 2011, CERN's Controls Middleware (CMW) team started a new project aiming to design and implement a new generation equipment access framework using modern, open-source products. After reviewing several communication libraries [1], ZeroMQ [2] was chosen as the transport layer for the new communication framework. The main design principles were: scalability, flexibility, easy to use and maintain. Several core ZeroMQ patterns were employed in order to provide reliable, asynchronous communication and dispatching of messages. The new product was implemented in Java and C++ for client and server side. It is the core middleware framework to control all CERN accelerators and the future GSI FAIR [3] complex. This paper presents the overall framework architecture; choices and lessons learnt while designing a scalable solution; challenges faced when designing a common API for two languages (Java and C++) and operational experience from using the new solution at CERN for 3 years. The lessons learnt and observations made can be applied to any modern software library responsible for fast, reliable, scalable communication and processing of many concurrent requests.
Footnotes & References [1] A. Dworak et al., "Middleware trends and market leaders 2011", ICALEPCS 2011.
[2] ZeroMQ, http://zeromq.org
[3] V. Rapp et al., "Controls Middleware for FAIR", PCaPAC 2014.
Paper download MOBPL05.PDF [0.472 MB / 7 pages]
Slides download MOBPL05_TALK.PDF [0.205 MB]
Export download ※ BibTeX LaTeXText/WordRISEndNote
Conference ICALEPCS2017, Barcelona, Spain
Series International Conference on Accelerator and Large Experimental Control Systems (16th)
Proceedings Link to full ICALEPCS2017 Proccedings
Session Software Technology Evolution 1
Date 09-Oct-17   11:30–13:00
Main Classification Software Technology Evolution
Keywords ion, CORBA, controls, framework, interface
Publisher JACoW, Geneva, Switzerland
Editors Volker RW Schaa (GSI, Darmstadt, Germany); Isidre Costa (ALBA-CELLS, Cerdanyola del Vallès, Spain); David Fernández (ALBA-CELLS, Cerdanyola del Vallès, Spain); Óscar Matilla (ALBA-CELLS, Cerdanyola del Vallès, Spain)
ISBN 978-3-95450-193-9
Published January 2018
Copyright © 2018 by JACoW, Geneva, Switzerland     CC-BY Creative Commons License
cc Creative Commons Attribution 3.0