SlideShare a Scribd company logo
8
Most read
9
Most read
11
Most read
Building Microservices with
gRPC
Sathya
Software Developer @ MoneySmart
REST APIs
● Well defined HTTP verbs
● JSON objects can be consumed by JavaScript easily.
● cURL friendly.
● Matured HTTP client libraries support in major languages.
Is it suitable for Microservices?
Not everything is a resource
Calculator Service
Manual Stub Code
Other problems
● Maintenance of the API documentation.
● JSON is text based which added unnecessary burden to the performance when serializing and
deserializing data.
gRPC
gRPC
● High performance RPC system.
● Uses HTTP/2 for transport.
● Uses ProtoBuf as Message Format.
● Supports different modes such as unary and bidirectional streaming.
● Ability to Cancel or Timeout requests.
ProtoBuf
● Mechanism for serializing structured data
● Binary Message Format
● For describing both service interface and message
structure
Advantages:
1. Better Performance
2. Easy to read Service and Message Definition
3. Able to generate Stub Classes Programmatically
Benefits of gRPC
1. Proto files itself act as the service documentation.
2. Automatic code generation for stubs by using proto compilers.
3. Better Performance by using HTTP/2 for transport and protobuf for serializing
Writing gRPC service
Steps:
1. Write Service Definition in Proto file format.
2. Generate Client / Server code using proto compiler.
3. Implement the Server by extending the generated server code.
4. Implement the Client by calling methods using the generated Client Stub.
Questions???
Useful Links
● https://grpc.io/
● https://developers.google.com/protocol-buffers/docs/proto3
● https://github.com/bigcommerce/gruf
● http://avi.im/grpc-errors/#ruby
● https://github.com/avinassh/grpc-errors
www.moneysmart.co/jobs

More Related Content

What's hot (20)

PDF
Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t...
AboutYouGmbH
 
PDF
Power-up services with gRPC
The Software House
 
PDF
Introduction to gRPC
Prakash Divy
 
PDF
Introduction to gRPC: A general RPC framework that puts mobile and HTTP/2 fir...
Codemotion
 
PPTX
What is gRPC introduction gRPC Explained
jeetendra mandal
 
ODP
Introduction to Nginx
Knoldus Inc.
 
PDF
gRPC vs REST: let the battle begin!
Alex Borysov
 
PDF
gRPC with java
Knoldus Inc.
 
PDF
gRPC: The Story of Microservices at Square
Apigee | Google Cloud
 
PPTX
Building your First gRPC Service
Jessie Barnett
 
PPTX
Protocol Buffers
Software Infrastructure
 
ODP
Protocol Buffers
Knoldus Inc.
 
PPTX
Introduction to NGINX web server
Md Waresul Islam
 
PDF
gRPC in Go
Almog Baku
 
PPTX
Nginx
Geeta Vinnakota
 
PDF
Inter-Process Communication in Microservices using gRPC
Shiju Varghese
 
PDF
Building Microservices with gRPC and NATS
Shiju Varghese
 
PPTX
NGINX: Basics and Best Practices
NGINX, Inc.
 
Robert Kubis - gRPC - boilerplate to high-performance scalable APIs - code.t...
AboutYouGmbH
 
Power-up services with gRPC
The Software House
 
Introduction to gRPC
Prakash Divy
 
Introduction to gRPC: A general RPC framework that puts mobile and HTTP/2 fir...
Codemotion
 
What is gRPC introduction gRPC Explained
jeetendra mandal
 
Introduction to Nginx
Knoldus Inc.
 
gRPC vs REST: let the battle begin!
Alex Borysov
 
gRPC with java
Knoldus Inc.
 
gRPC: The Story of Microservices at Square
Apigee | Google Cloud
 
Building your First gRPC Service
Jessie Barnett
 
Protocol Buffers
Software Infrastructure
 
Protocol Buffers
Knoldus Inc.
 
Introduction to NGINX web server
Md Waresul Islam
 
gRPC in Go
Almog Baku
 
Inter-Process Communication in Microservices using gRPC
Shiju Varghese
 
Building Microservices with gRPC and NATS
Shiju Varghese
 
NGINX: Basics and Best Practices
NGINX, Inc.
 

Similar to Building microservices with grpc (20)

PDF
Building Language Agnostic APIs with gRPC - JavaDay Istanbul 2017
Mustafa AKIN
 
PPTX
The new (is it really ) api stack
Red Hat
 
PDF
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2
 
PPTX
Introduction to gRPC. Advantages and Disadvantages
abdulrehmanlatif65
 
PDF
Cloud Native API Design and Management
AllBits BVBA (freelancer)
 
PPTX
gRPC - Fastest Data Transfer Protocol
Sougata Pal
 
PPTX
Building API Using GRPC And Scala
Knoldus Inc.
 
PPTX
Rpc framework
july mon
 
PDF
REST in Peace. Long live gRPC!
QAware GmbH
 
PDF
Bringing Learnings from Googley Microservices with gRPC - Varun Talwar, Google
Ambassador Labs
 
PPTX
Yotpo microservices
Ron Barabash
 
PDF
Webinar: Draw a line between HTTP/2 client and HTTP Client
Knoldus Inc.
 
PDF
REST in Peace. Long live gRPC!
QAware GmbH
 
PPTX
Microservices summit talk 1/31
Varun Talwar
 
PDF
gRPC services testing
Thivya Lakshmi
 
PDF
Building RESTtful services in MEAN
Madhukara Phatak
 
PDF
KrakenD API Gateway
Albert Lombarte
 
PDF
gRPC or Rest, why not both?
Mohammad Murad
 
PDF
SignalR or gRPC: Choosing the Right Technology for Real-Time Communication in...
Tien Nguyen
 
PDF
Towards constrained semantic web
☕ Remy Rojas
 
Building Language Agnostic APIs with gRPC - JavaDay Istanbul 2017
Mustafa AKIN
 
The new (is it really ) api stack
Red Hat
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2
 
Introduction to gRPC. Advantages and Disadvantages
abdulrehmanlatif65
 
Cloud Native API Design and Management
AllBits BVBA (freelancer)
 
gRPC - Fastest Data Transfer Protocol
Sougata Pal
 
Building API Using GRPC And Scala
Knoldus Inc.
 
Rpc framework
july mon
 
REST in Peace. Long live gRPC!
QAware GmbH
 
Bringing Learnings from Googley Microservices with gRPC - Varun Talwar, Google
Ambassador Labs
 
Yotpo microservices
Ron Barabash
 
Webinar: Draw a line between HTTP/2 client and HTTP Client
Knoldus Inc.
 
REST in Peace. Long live gRPC!
QAware GmbH
 
Microservices summit talk 1/31
Varun Talwar
 
gRPC services testing
Thivya Lakshmi
 
Building RESTtful services in MEAN
Madhukara Phatak
 
KrakenD API Gateway
Albert Lombarte
 
gRPC or Rest, why not both?
Mohammad Murad
 
SignalR or gRPC: Choosing the Right Technology for Real-Time Communication in...
Tien Nguyen
 
Towards constrained semantic web
☕ Remy Rojas
 
Ad

Recently uploaded (20)

PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
"Beyond English: Navigating the Challenges of Building a Ukrainian-language R...
Fwdays
 
Ad

Building microservices with grpc

  • 2. REST APIs ● Well defined HTTP verbs ● JSON objects can be consumed by JavaScript easily. ● cURL friendly. ● Matured HTTP client libraries support in major languages.
  • 3. Is it suitable for Microservices?
  • 4. Not everything is a resource Calculator Service
  • 6. Other problems ● Maintenance of the API documentation. ● JSON is text based which added unnecessary burden to the performance when serializing and deserializing data.
  • 8. gRPC ● High performance RPC system. ● Uses HTTP/2 for transport. ● Uses ProtoBuf as Message Format. ● Supports different modes such as unary and bidirectional streaming. ● Ability to Cancel or Timeout requests.
  • 9. ProtoBuf ● Mechanism for serializing structured data ● Binary Message Format ● For describing both service interface and message structure Advantages: 1. Better Performance 2. Easy to read Service and Message Definition 3. Able to generate Stub Classes Programmatically
  • 10. Benefits of gRPC 1. Proto files itself act as the service documentation. 2. Automatic code generation for stubs by using proto compilers. 3. Better Performance by using HTTP/2 for transport and protobuf for serializing
  • 11. Writing gRPC service Steps: 1. Write Service Definition in Proto file format. 2. Generate Client / Server code using proto compiler. 3. Implement the Server by extending the generated server code. 4. Implement the Client by calling methods using the generated Client Stub.
  • 13. Useful Links ● https://grpc.io/ ● https://developers.google.com/protocol-buffers/docs/proto3 ● https://github.com/bigcommerce/gruf ● http://avi.im/grpc-errors/#ruby ● https://github.com/avinassh/grpc-errors