elli-lib / elli

Simple, robust and performant Erlang web server
https://github.com/elli-lib/elli/blob/develop/doc/README.md
MIT License
313 stars 36 forks source link

HTTP2 support #78

Open lpil opened 4 years ago

lpil commented 4 years ago

It's be great to have HTTP2 support in Elli!

This seems like quite an ambitious addition but I thought I'd open an issue anyway :)

tsloughter commented 4 years ago

@lpil I don't think it should ever be added to elli itself, which is why I created https://github.com/elli-lib/elli_chatterbox.

Obviously issue being they don't have a shared form of request and configuration, all they share is the tcp acceptor which based on if you send a h2 upgrade in ssl it goes to http2.

But this could be built on to provide a shared interface for both while keeping it not added it directly into elli itself.

yurrriq commented 4 years ago

:+1: to shared interface and an example in https://github.com/elli-lib/elli-examples

yurrriq commented 3 years ago

Opened https://github.com/elli-lib/elli-examples/issues/8

yurrriq commented 3 years ago

Is there some way we could use the Plug design for the shared interface?

tsloughter commented 3 years ago

I wouldn't.

But I'd be open to reviving https://github.com/tsloughter/elna, just not sure if there is a user base out there.

Also, I've been meaning to merge in an acceptor_pool interface to chatterbox and submit one for elli, then they'll both be easily combined, tho with their own handlers, so only useful for those who have a specific use-case where they want the http1/http2 to be handled by separate modules.