Home // ICNS 2018, The Fourteenth International Conference on Networking and Services // View article


Scalable Messaging for Java-based Cloud Applications

Authors:
Kevin Beineke
Stefan Nothaas
Michael Schoettner

Keywords: Message passing, Ethernet networks, Java, Data centers, Cloud computing

Abstract:
Many big data and large-scale cloud applications are written in Java or are built using Java-based frameworks. Typically, application instances are running in a data center on many virtual machines which requires scalable and efficient network communication. In this paper, we present the practical experience of designing a Java.nio transport for DXNet, a low latency and high throughput messaging system which goes beyond message passing by providing a fast parallel object serialization. The proposed design uses a zero-copy send and receive approach avoiding copying data between de-/serialization and send/receive. It is based on Java.nio socket channels complemented by application-level flow control to achieve low latency and high throughput for >10 GBit/s Ethernet networks. Furthermore, a scalable automatic connection management and a low-overhead interest handling provides an efficient network communication for dozens of servers, even for small messages (< 100 bytes) and all-to-all communication pattern. The evaluation with micro benchmarks shows the efficiency and scalability with up to 64 virtual machines in the Microsoft Azure cloud. DXNet and the Java.nio-based transport are open source and available on Github.

Pages: 32 to 41

Copyright: Copyright (c) IARIA, 2018

Publication date: May 20, 2018

Published in: conference

ISSN: 2308-4006

ISBN: 978-1-61208-633-0

Location: Nice, France

Dates: from May 20, 2018 to May 24, 2018