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

supporting http3 #376

Open
ouvaa opened this issue Feb 28, 2024 · 13 comments
Open

supporting http3 #376

ouvaa opened this issue Feb 28, 2024 · 13 comments

Comments

@ouvaa
Copy link

ouvaa commented Feb 28, 2024

possible to support http3 like salvo?

@PureWhiteWu
Copy link
Member

Hello, this is in our roadmap, but there's not an ETA now.
Can you describe your usage scenario in more detail?

@ouvaa
Copy link
Author

ouvaa commented Feb 28, 2024

@PureWhiteWu you have the fastest rpc etc and dont have http3 or monoio http2... it's like always some room for upgrades.

pls just go with http2 + monoio if this is the fastest way forward for use today.

can you pls provide eta? rust project can be 1 year eta etc. i hope to have a feel of ETA to see if it's worth waiting for this volo or alternatives. really hope to see eta soon.

possible to provide eta?

@PureWhiteWu
Copy link
Member

Why do you need monoio instead of the tokio version?

@ouvaa
Copy link
Author

ouvaa commented Feb 28, 2024

@PureWhiteWu its mentioned the 25% speed up is very useful.

@PureWhiteWu
Copy link
Member

So what's your real need? Do you need the thread-per-core architecture?

@ouvaa
Copy link
Author

ouvaa commented Mar 2, 2024

@PureWhiteWu yes, thread per core is great. pls implement monoio thx.

@li-jin-gou
Copy link
Member

li-jin-gou commented Mar 2, 2024

I'm curious if the reason you're so anxious to use Volo HTTP3 is because you're already using Volo?
I don't rust but I think the main time should be invested in real users and needs. Hertz also supported H3 but it's been a year and there are no real users.(I saw the github email and replied because I was curious, but I don't know rust or volo.)

@ouvaa
Copy link
Author

ouvaa commented Mar 2, 2024

@PureWhiteWu @li-jin-gou i need something with monoio and tls. this is bare minimum whether http1.1 or http2 or http3

i prefer getting volo http3 done because salvo already has it and people go for salvo because of http3 etc.

i like cloudwego's volo so please just do http2 with monoio or monoio support with tls. that'll be all i'm asking for actually.

p.s. : the reason i'm so anxious to use volo with monoio is because i already used hertz. i hit a lot of memory-GC issues now even after plenty finetuning. cloudflare/pingora is open sourced, mentioned some of the issues i am having with golang now.

i suggest something with monoio and tls please. that's all for great adoption. best if implemented in volo

volo-http-tls
volo-http-tls-monoio <-- forever i will only use volo and not switch anymore.

@ouvaa
Copy link
Author

ouvaa commented Mar 2, 2024

@li-jin-gou i've tried monoio and it's really good. just missing http-tls feature.

i can live with just http1.1 with monoio and volo tls. can slowly do http2 etc. nevermind http3 too.

can this be done quick? i'm actually looking at pingora too. it's one of the only ones that support https at scale with support for websocket.

this is for real world usage.

@PureWhiteWu
Copy link
Member

Hello, if you just need thread-per-core and http-tls, maybe you can use volo-http together with thread-per-core tokio?
We are developing http-tls now and this will be released in the near future.

@ouvaa
Copy link
Author

ouvaa commented Mar 4, 2024

@PureWhiteWu my problem is you do not eta for tls. i've seen monoio being updated with some features happened in 8-12 mths.

i understand the importance of getting out good but eta is very important. i also understand some ETAs can be delayed 1 - 2 mths but at least u have etas.

just fyi, i really like volo "for a lot of other things too" but http1.1, h2 and http3 tls is just resolved here:
HFQR/xitca-web#963

so i guess other than salvo, xitca has thread per core to work with now. maybe u can consider some reference so we can "port" to each other for compatibility in terms of other functions / feature development.

anyway, eta is important. pls give an eta, thx
i'm mentioning because there are other features almost within 1 year still have not seen materialized.

@yukiiiteru
Copy link
Member

@ouvaa volo-http with TLS will be released in this month, but http3 uses quic and volo does not support it currently.

If you have strong needs, we will include it in our plans. But we currently have no plans to support h3.

@thegenius
Copy link

thegenius commented Jun 25, 2024

看了前面的讨论,我觉得可能需要清晰看清楚一个事实,就是http3究竟在什么场景有优势和意义,从目前的经验来看,http3只在弱网和移动场景(某种意义的弱网)下有显著优势。现在volo的主战场还是后端服务集群,并不太涉及直接和前端的交互。
在不支持和前端或者web端直连的情况下,h3可能只是一个噱头。
但是如果有一天,volo开始思考web端直连了,那么弱网就是一个必须要考虑的场景,支持h3就会有显著吸引力,现阶段可能有更多其他重要的事情。

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

No branches or pull requests

5 participants