Skip to content

ericwq/gskills

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gSkills

My original goal is to understand the source code of gRPC-go. When researching the source code, I found a lot of coding skills/design which deserved to be noted for later reference.

Gradually, as more chapter finished, it becomes "Understanding gRPC-go": the code analysis book. All content are golang and gRPC-go related.

Get a quick glimpse from the following diagram. See Balancer and Resolver API for detail. images.008

Status

Done:

  • 2021/03/29 xDS protocol - LDS/RDS is done
  • 2021/04/06 xDS protocol - CDS/EDS is done.
  • 2021/03/19 Send Request is completely rewritten.
  • 2021/03/19 Send Response is completely rewritten.
  • 2021/03/28 Client dial is completely rewritten.
  • 2021/03/18 The transport is done. This chapter provide whole picture from the view of transport.
  • 2021/04/03 xDS wrappers is done. The xDS class diagram for main type.
  • 2021/04/06 XDS picker is done. How to choose the endpoint during RPC calling?

Plan:

  • Stream dial, Stream request and response.
  • Load reporting service
  • RPC filter

Content

Reading material

The following books help me to build a solid foundation for HTTP2 and gRPC. They answer a lot of questions about Why, What and some part of How, while gSkills purely focus on How to implement them in gRPC.

The following articles are very helpful to understand envoy. The official Introduction is not easy to understand, full of terminology, too much details to easily get distracted.

License

Please read the LICENSE for more details.

About

Understanding gRPC - go. The implementation details.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published