Skip to content

perf: remaining small items #210

Closed
Closed
@mattklein123

Description

@mattklein123

A few more small items for this perf pass before calling it good:

  • Don't allocate PooledStreamEncoder (class can be merged into Router, not used anywhere else)
  • Cache date string for date header every 500ms or so
  • Store integer headers as integers also to avoid converting back and forth
  • Optimize buffer callbacks
  • Remove locking from libevent base
  • 0 copy grpc encode
  • Only do PNRG in runtime when needed
  • stat flushing code
  • Don't copy http/2 static headers when encoding
  • remove fmt::format from dynamic stats in router
  • remove copy from path match route action
  • allocate "light" host when doing service discovery so we don't allocate full stat block which we never use.
  • std::vector<nghttp2_settings_entry> iv in http2 codec can be a fixed array

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions