GithubHelp home page GithubHelp logo

grpc-example's People

Contributors

kevinten10 avatar pinxiong avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

grpc-example's Issues

Reactor gRPC examples.

Why use Reactor

Whether gRPC , dubbo, rsocket or webflux, their API design follows the Reactive Streams specification, and they all provide their own implementation.

Reactor is the current standard for Reactive libraries .Use the Reactor library can be better to perform reactive programming.

From the perspective of interface-oriented programming, if Reactive Streams is a design specification, then Reactor is the interface, and grpc, etc. provide specific implementation.

What is Reactor

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactive Extensions inspired API and efficient event streaming support.

Introducing reactive-grpc

Reactive gRPC is a suite of libraries for using gRPC with Reactive Streams programming libraries. Using a protocol buffers compiler plugin, Reactive gRPC generates alternative gRPC bindings for each reactive technology. The reactive bindings support unary and streaming operations in both directions. Reactive gRPC also builds on top of gRPC's back-pressure support, to deliver end-to-end back-pressure-based flow control in line with Reactive Streams back-pressure model.

The groupId is unreasonable

The groupId is unreasonable in pom.xml file.

Motivation

This project belongs to reactivegroup, I don't think it's reasonable to use com.pinxiong.grpc in this project's groupId.

Desired solution

Change the groupId from com.pinxiong.grpc to io.grpc

Considered alternatives

This project is about to grpc, as well as grpc project's groupId is io.grpc, so I think we can change groupId from com.pinxiong.grpc to io.grpc.

Use wireshark to analyze this application.

What I observed

Use HTTP2 to establish and maintain the connection.

Use GPRC to transmit HEADERS and PAYLOAD (using protobuf).

wireshark

Is it multiplexed

I can see that there is Stream ID on the HTTP2 protocol, so I guess that GPRC uses HTTP2 multiplexing.

http2stream

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.