QuickGrpc - grpc 101 tailored towards rest devs and showcase of quickgrpc framework

Ashutosh Pednekar (~ashupednekar)


0

Votes

Description:

Many python devs start with off the shelf frameworks like fastapi/django which is great for building services interacting with frontend applications over the web, but it's very limiting both in terms of perfomance as well as design/architecture possiblities when it comes to microservices

this talk intends to demysify protobuf and grpc and introduce a new framework library "quickgrpc" that intends to make grpc service development as easy and structured as a rest framework.

TLDR In the dynamic landscape of Python development, frameworks like FastAPI and Django have been instrumental in jumpstarting countless projects, especially those aimed at web interactions. However, as developers venture into the realm of microservices, they often encounter limitations in both performance and architectural flexibility. Enter QuickgRPC, a revolutionary framework poised to revolutionize microservices development.

In this session, we aim to demystify the power of Protocol Buffers (Protobuf) and gRPC (Google Remote Procedure Call), two technologies that are reshaping the way microservices communicate. Protobuf provides a language-agnostic mechanism for serializing structured data, while gRPC facilitates efficient communication between services across different languages and platforms.

Our focus will be on bridging the gap between traditional REST frameworks and the agility of microservices architecture. QuickgRPC emerges as the solution, offering a streamlined approach to building gRPC services with the ease and structure reminiscent of REST frameworks. By abstracting away the complexities traditionally associated with gRPC development, QuickgRPC empowers Python developers to embrace microservices without compromising on productivity or scalability.

Key topics covered in this session include:

Understanding the fundamentals of Protobuf and gRPC.
Exploring the advantages of gRPC over traditional REST APIs.
Introducing QuickgRPC: A guided tour of its features and capabilities.
Hands-on demonstrations: Building microservices with QuickgRPC.
Best practices and patterns for designing microservices with QuickgRPC.

Whether you're a seasoned Python developer looking to level up your microservices game or a newcomer eager to explore the possibilities beyond traditional REST frameworks, this session promises to equip you with the knowledge and tools needed to thrive in the microservices ecosystem. Join us as we embark on a journey towards unlocking the full potential of microservices development with QuickgRPC at PyCon 2024 India.

Prerequisites:

Basic understanding of http and rest apis, as well as structs/classes and data types.

TLDR To fully engage with the content and concepts presented in this session, attendees should have a basic understanding of the following:

HTTP and REST APIs:

Familiarity with Hypertext Transfer Protocol (HTTP) and Representational State Transfer (REST) APIs is essential. Understanding how HTTP requests and responses work, as well as the principles of RESTful design (such as resource identification and manipulation through uniform interfaces), will provide a solid foundation for grasping the differences and advantages of gRPC over traditional REST APIs.

Structs/Classes and Data Types:

Proficiency in working with data structures, including structs, classes, and various data types, is crucial. This includes understanding how to define and manipulate data structures in Python, as well as the concepts of data serialization and deserialization. Protobuf, which is integral to gRPC, relies heavily on structured data definitions, so a basic understanding of data types and serialization mechanisms will be beneficial.

By having a grasp of these prerequisites, attendees will be better equipped to dive into the intricacies of Protocol Buffers, gRPC, and QuickgRPC during the session. Additionally, familiarity with HTTP and REST APIs will provide a valuable point of reference for comparing and contrasting different approaches to building and consuming APIs, while knowledge of data structures and types will facilitate comprehension of the data serialization aspect inherent in gRPC-based communication.

Content URLs:

https://ashupednekar.github.io/quickgrpc/

Speaker Info:

Seasoned software architect with a strong background in cloud-native solutions, Kubernetes, and system design/architecture.

I've led the design and development of many complex AI software products leveraging the ML/DL techniques, taking them end to end for major players across various domains. Integrated several novel software products with legacy tools/platforms as well as state of the art dev tools. Deployed secure containerized micro-services across various cloud providers as well as on-premise as standalone docker containers/ Kubernetes clusters

Highly adaptable and comfortable working in a collaborative environment with result driven approach and out of the box thinking. Frequently interacted with developers from various companies across the Middle east, Europe and Africa

  • Well versed and experienced in Machine Learning and it's application across sensitive domains like fintech, telecom, retail, etc.
  • Fluent python developer, can solve any problem at hand with enough research and time
  • Experienced in building docker images from scratch, and developing in line with the benifits/restrictions that come with
  • I always aspire to keep my code clean and structured/documented , hence constantly refactored even mature projects preserving their functionality
  • Contributed to a handful of open source projects
  • Have solved many complex issues in mission critical systems
  • Have developed multiple projects in Computer Vision, NLP and Speech Recognition.

Making sure my learning never stops so I can always expand my horizons and strenthen my core skills

Speaker Links:

https://www.linkedin.com/in/ashutosh-pednekar-434b52103/

https://github.com/ashupednekar/

Section: Python in Web and Applications
Type: Talk
Target Audience: Intermediate
Last Updated: