Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cowboy issues #9

Open
CrowdHailer opened this issue Oct 17, 2017 · 4 comments
Open

Cowboy issues #9

CrowdHailer opened this issue Oct 17, 2017 · 4 comments

Comments

@CrowdHailer
Copy link

@willemdj Hi,

I saw your thread on HTTP/2 features in cowboy. I have been working on an HTTP/2 server. It is clearly not as mature as cowboy but was developed HTTP/2 first so might be more useful for a GRPC foundation. The possible downside from your point of view is at the moment it is in Elixir. I haven't yet worked out how to use an Elixir lib in erlang but I would certainly like to set that up.

Quick summary of the issues you raised here ninenines/cowboy#1191

  • It does send trailers
  • it makes some assumptions about the headers sent when falling back to HTTP/1 but none about what is sent over HTTP/2 so there are no date and server headers by default
  • The peer certificate could be more tricky, but I am currently looking at how to expose more information about the connection.
  • headers are a list so ordering should be fine
  • flow control, that is a feature I am trying to hold off on until after 1.0 to limit workload.
@tsloughter
Copy link
Contributor

@CrowdHailer for building elixir libs in an Erlang project see https://github.com/barrel-db/rebar3_elixir_compile, it works well.

@willemdj
Copy link
Contributor

willemdj commented Oct 17, 2017 via email

@tsloughter
Copy link
Contributor

I'd be interested in following any work to plug in a different server, since in addition to Ace I'd like to see chatterbox supported.

@CrowdHailer
Copy link
Author

@willemdj yes there is automatic flow control. Working under the assumption that the Elixir endpoint will not be overwhelmed by traffic sent to it.

I have an idea on how to expose connection information to each stream worker. But it seams wasteful for each stream to check the connection security. maybe there should be callbacks available at the connection level. It would be interesting to see a concrete usecase before picking a solution.

I would like to create a GRPC binding. Hopefully in the next month I will be able to carve out some time to focus on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants