Encyclopedia of Big Data Technologies

2019 Edition
| Editors: Sherif Sakr, Albert Y. Zomaya

Streaming Microservices

  • Ted DunningEmail author
  • Ellen Friedman
Reference work entry
DOI: https://doi.org/10.1007/978-3-319-77525-8_198

Synonyms

Definitions

Streaming microservices refers to a style of building large-scale software systems as a collection of independently deployable processes that communicate via persistent message streams rather than via remote procedure calls (RPC). A key distinction between streaming and RPC-based microservices is that streaming microservices provide a high degree of temporal decoupling between services. Not only does it not matter how a service does what it does, but it also matters much less exactly when it does it.

The use of streaming microservices is distinct from previous architectural trends such as Service Oriented Architecture (SOA) because the message streams used with streaming microservices are very simple, supporting little more than ordered delivery of messages organized into topics as opposed to the highly complex semantics supported by Enterprise Service Busses (ESB).

Historical Background

The term microservices as...

This is a preview of subscription content, log in to check access.

References

  1. Apache Software Foundation (2016a) Flink. http://flink.apache.org
  2. Apache Software Foundation (2016b) Spark structured streaming. https://spark.apache.org/docs/latest/structured-streaming-programming-guide.html
  3. Dunning T, Friedman E (2016) Streaming architecture: new designs using Apache Kafka and MapR streams. O’Reilly Media, Inc., SebastopolGoogle Scholar
  4. Fielding RT, Taylor RN (2002) Principled design of the modern web architecture. ACM Trans Internet Technol 2(2):115–150. http://doi.acm.org/10.1145/514183.514185CrossRefGoogle Scholar
  5. Fowler M, Lewis J (2014) Microservices. http://martinfowler.com/articles/microservices.html
  6. Friedman E, Tzoumas K (2016) Introduction to Apache flink: stream processing for real time and beyond. O’Reilly Media, Inc., SebastopolGoogle Scholar
  7. Hughes-Croucher T, Wilson M (2012) Node – up and running: scalable server-side code with javascript. O’Reilly. http://shop.oreilly.com/product/0636920015956.do
  8. Johnston WM, Hanna JRP, Millar RJ (2004) Advances in dataflow programming languages. ACM Comput Surv 36(1):1–34.  https://doi.org/10.1145/1013208.1013209. http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.99.7265CrossRefGoogle Scholar
  9. Narkhede N, Shapira G, Palino T (2017) Kafka – the definitive guide: real-time data and stream processing at scale. O’Reilly Media, Incorporated.http://shop.oreilly.com/product/0636920044123.doGoogle Scholar
  10. Newman S (2015) Building microservices. O’Reilly Media, Inc., http://shop.oreilly.com/product/06369 20033158.do
  11. Snyder B, Bosanac D, Davies R (2011) ActiveMQ in action. Manning Publications Co., Greenwich. https://www.manning.com/books/activemq-in-actionGoogle Scholar
  12. Videla A, Williams J (2012) RabbitMQ in action: distributed messaging for everyone. Manning Pubs Co series. Manning Publications Company. https://www.manning.com/books/rabbitmq-in-actionGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.MapR Technologies and Apache Software FoundationSanta ClaraUSA