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.


https://doi.org/10.18429/JACoW-ICALEPCS2017-MOBPL05
Title How to Design & Implement a Modern Communication Middleware Based on ZeroMQ
Authors
  • 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
Copyright © 2018 by JACoW, Geneva, Switzerland     CC-BY Creative Commons License
cc Creative Commons Attribution 3.0