REST, GraphQL, gRPC ... navigating the server communication landscape in serverless architectures
Serverless architectures use third-party services and is run in short-lived containers. You might have come across the term: Function-as-a-service. They have two major advantages:
1. Reduce operational costs
2. Reduce technical debt
This leads to a situation of applications sitting inside many containers communicating with each other and also communicating with the front-end/client. In other words:
1. client-server communication
2. server-server communication
How to achieve the communication, their respective advantages and tradeoffs - is important to understand, as one embarks on architecting such a system.
A typical data science project will have a lot of microservices. (Eg: microservices for various data ingestion pieces, microservices for model training, etc)
This talk will give an overview of the most common methods and advantages and use cases for them, with specific focus on data science projects.
The broad outline of the talk is as follows:
- What is serverless architecture?
- Thinking cloud for data science
- A brief overview on how containers help scale up and down the data science workflow
- server-server communication (Examples and ways to achieve them)
- Client-server communication (Examples and ways to achieve them)
- Closing thoughts
This will be more of a “how-to” talk. While the concepts are introduced, the focus will be more on how these are achieved using Python and on cloud. A significant amount of time will be on using REST, GraphQL and gRPC in Python.
Some knowledge of cloud computing helps. Going through Martin Fowler’s blog will definitely be helpful: https://martinfowler.com/articles/serverless.html
Bargava Subramanian is a Machine Learning engineer based out of Bangalore, India. Bargava has 14 years’ experience delivering business analytics solutions to investment banks, entertainment studios, and high-tech companies. He has given talks and conducted numerous workshops on data science, machine learning, deep learning, and optimization. He currently mentors early-stage startups in their data science journey. He holds a master’s degree in statistics from the University of Maryland at College Park. He is an ardent NBA fan.