Reactive Programming With Java Develop concurrent and asynchronous applications with Java Tejaswini Mandar Jog BIRMINGHAM - MUMBAI Reactive Programming With Java Copyright © 2017 Packt Publishing All rights reserved No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews Every effort has been made in the preparation of this book to ensure the accuracy of the information presented However, the information contained in this book is sold without warranty, either express or implied Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals However, Packt Publishing cannot guarantee the accuracy of this information First published: September 2017 Production reference: 1190917 Published by Packt Publishing Ltd Livery Place 35 Livery Street Birmingham B3 2PB, UK ISBN 978-1-78712-423-3 www.packtpub.com Credits Author Copy Editor Tejaswini Mandar Jog Safis Editing Reviewer Project Coordinator Jay Lee Prajakta Naik Commissioning Editor Proofreader Aaron Lazar Safis Editing Acquisition Editor Indexer Karan Sadawana Francy Puthiry Content Development Editor Production Coordinator Lawrence Veigas Nilesh Mohite Technical Editor Tiksha Sarang About the Author Tejaswini Mandar Jog is a passionate and enthusiastic Java trainer She has more than nine years of experience in the IT training field, specializing in Java, J2EE, Spring, and relevant technologies She has worked with many renowned corporate companies on training and skill enhancement programs She is also involved in the development of projects using Java, Spring, and Hibernate Tejaswini has written two books In her first book, Learning Modular Java Programming, the reader explores the power of modular programming to build applications with Java and Spring The second book, Learning Spring 5.0, explores building an application using the Spring 5.0 framework with the latest modules such as WebFlux for dealing with reactive programming I am very lucky to get a chance to write another book on the newest concept in the market added to Java Nowadays, most the developers are talking about Java I got a chance not only to explore Java but also Reactive Programming It’s an exciting and challenging opportunity The challenge was to introduce the concepts in the manner so that the reader will be able to understand them without difficulty Thank you, Mandar, for being the first reader of the book and for giving sincere feedback Thank you so much for taking an active part in the writing process and helping me to improve This book would not have been completed without Lawrence Veigas, the editor, and Tiksha Sarang, the technical editor of the book The valuable input and comments from them helped a lot to improve the content The comments by the technical reviewer, Jay Lee, really made the difference Thank you, Jay Lee I want to take the opportunity to thank the Packt Pub team for all the effort at various stages of the book Without you guys, it wouldn’t have been possible How could I forget my lovely son, Ojas! Thank you, Ojas, for being so supportive and patient while I was busy with my work! Papa and Mumma, thank you for your support and encouragement, which motivates me to try giving my best Love you!! Finally, thank you all who helped by supporting me directly and indirectly to complete this book Thank you just for being with me as my biggest support About the Reviewer Jay Lee is currently working at Pivotal as senior platform architect His job is to help big enterprise Cloud-Native Journey with Spring, Spring Boot, Spring Cloud, and Cloud Foundry Before joining Pivotal, he spent 10 years at Oracle and worked with big enterprises for their large-scale Java distributed system and middleware Currently, Jay is authoring a microservices book (the name of the book is yet to be decided) using Spring Boot and Spring Cloud .. .Reactive Programming With Java Develop concurrent and asynchronous applications with Java Tejaswini Mandar Jog BIRMINGHAM - MUMBAI Reactive Programming With Java Copyright ©... currently working with Java or RxJava The book will also be helpful for all those who want to start working with reactive programming using Java In every chapter, we will start with a discussion... about functional programming in depth This book begins with explaining what reactive programming and the Reactive Manifesto is, and about the Reactive Streams specification It uses Java to introduce