Http2 header parser can be made more performant
- Dominant language
- Scala
- Stars
- 196
- Forks
- 55
- Avg merge
- 4d 52m
- Merged PRs (30d)
- 74
Description
https://github.com/apache/pekko-http/blob/af7ed86d6f00c67cf2d70a8a70e1ad3e46d0dcbd/http-core/src/main/scala/org/apache/pekko/http/impl/engine/http2/RequestParsing.scala#L194
* currently converts the strings back to bytes to parse
* adds a hacky 'x' to the content to get the current parser to accept the byte stream
* may need a dedicated new parser method that works at char or String level
Contributor guide
Research direction
Start in http-core/src/main/scala/org/apache/pekko/http/impl/engine/http2/RequestParsing.scala around line 194. Trace how the parser converts strings back to bytes and adds the extra “x”, then determine the appropriate parser entry point for the existing HTTP/2 header content. Done means the unnecessary conversion and workaround are removed while header parsing remains correct and more performant.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- networking
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100