ninenines / cowlib

Support library for manipulating Web protocols.
ISC License
279 stars 173 forks source link

Optimize HTTP/2 #90

Closed essen closed 4 years ago

essen commented 4 years ago

Work in progress.

essen commented 4 years ago

https://github.com/ninenines/cowlib/commit/b84021edf5b1b17f817d5a9bca40a08bbbfd572d has probably significantly more impact than this PR.

essen commented 4 years ago

I don't know if the first commit is good because it likely has an impact only when a lot of headers are indexed. And even then, it might not, depending on configuration. So I will drop it for now.

The other two though are probably useful even if the performance stays the same, because maps make more sense and it simplifies the code a little.

essen commented 4 years ago

I've now merged a better version of the cow_http2_machine changes in e7852121a01e511b002e3af2851b7b8780ca1902.

The HPACK changes are very intrusive and it is unclear whether they are even useful so they will not be merged at the time.

Closing, thanks!