tornado_http2 icon indicating copy to clipboard operation
tornado_http2 copied to clipboard

Pypi Ready? - Question (not so much an issue)

Open ghost opened this issue 7 years ago • 4 comments

Hello @bdarnell

So I been using this for some time..I wish publicly, but in a undisclosed location I've been using this in production for a little bit now, and I have to say that its working really well. I use websockets, I do cookie authorization, I have RESTful APIs, and I have OAUTH2 backed services it hosts & one that it interacts with. all in all, its going well man.

Is there anything you would like me to report? Test? Try? I haven't had to dig into the code because its been rock solid so far.

I think at least it could go up on pypi as a late stage alpha or early beta if you don't want to slap production ready on it.

ghost avatar Jan 26 '18 17:01 ghost

Great, I'm glad it's working well for you. That's really all I've been waiting for before posting this is for someone other than me to report some success with it. Although now that there's been some bit rot between this and the main tornado repo, I think I need to get the tests passing again before I upload this to pypi.

One specific concern I have is around performance - I've thought that things like hpack would need to be rewritten in C or cython to get acceptable performance, but I haven't gotten around to doing any measurements. Have you done any performance measurements?

bdarnell avatar Jan 27 '18 01:01 bdarnell

@bdarnell I can absolutely do that. Do you have any particular types of things you would like me to test with? E.g. is there a test suite that is preferable? What I can say is I have had hundreds of concurrent connections without issue thus far, but it is load balanced behind nginx if that means anything. What I can do is run it straight without nginx and see how it performs. I never done something like this before so any way I can do that I shall. I won't be able to test till Tuesday but I'm happy to do this.

Also: if you are looking for some fast c bindings for parsing http2 protocols the nghttp2 project is doing a wonderful job on this. I think there is some real potential here. I've toyed with their python bindings and they're pretty solid.

ghost avatar Jan 27 '18 22:01 ghost

I'm just looking for some basic QPS numbers - how many "hello world" pages can it serve per second compared to the HTTP/1 version? Something like this, but with a load generator that supports both http/1 and /2.

I know there are C (and rust, etc) libraries out there for this that I could be wrapping and probably get better performance. I wanted to implement everything by hand in python first for fun :)

bdarnell avatar Jan 28 '18 00:01 bdarnell

I apologize I agent been able to test this week I’m hoping early next week I been so busy unexpectedly but I have not forgotten

ghost avatar Feb 02 '18 15:02 ghost