Reactive Application Development cover
welcome to this free extract from
an online version of the Manning book.
to read more
or

Foreword

 

In the past five years, we have seen reactive progress from a virtually unacknowledged technique used only by fringe projects within a select few corporations to part of the overall platform strategy of numerous big players in many fields, including middleware, financial services, retail, social media, and betting/gaming. Its use has moved beyond early adopters and distributed-systems experts; today, it’s the foundation of some of the most interesting emerging technologies, including cloud computing, microservices, streaming/fast data, and the Internet of Things.

The Reactive Manifesto—which I helped co-author in 2013—defines reactive as a set of architectural design principles that are geared to meeting the demands that systems face today and tomorrow. These principles aren’t new but can be traced back to the 1970s and 1980s and to the groundbreaking work by Jim Gray and Pat Helland on the Tandem System and by Joe Armstrong and Robert Virding on Erlang. These pioneers were ahead of their time, however; it wasn’t until the past 5 to 10 years that the technology industry at large was forced to rethink current best practices for enterprise system development and to apply the hard-won knowledge of reactive principles to today’s world of distributed systems and multicore architectures.