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

http: server code refactor #6533

Merged
merged 8 commits into from
Dec 29, 2016
Merged

Commits on Dec 29, 2016

  1. http: reuse existing headers array for raw values

    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    175ed52 View commit details
    Browse the repository at this point in the history
  2. http: misc cleanup and minor optimizations

    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    14c76f8 View commit details
    Browse the repository at this point in the history
  3. http: refactor server connection handling

    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    832271c View commit details
    Browse the repository at this point in the history
  4. http: improve validation performance

    The new table-based lookups perform significantly better for the
    common cases (checking latin1 characters).
    
    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    a54972c View commit details
    Browse the repository at this point in the history
  5. lib: avoid recompilation of anonymous functions

    Since at least V8 5.4, using function.bind() is now fast enough to
    use to avoid recompiling/reoptimizing the same anonymous functions.
    These changes especially impact http servers.
    
    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    b6ea857 View commit details
    Browse the repository at this point in the history
  6. http: extract validation functions

    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    e8b809a View commit details
    Browse the repository at this point in the history
  7. http: simplify boolean checks

    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    af74e72 View commit details
    Browse the repository at this point in the history
  8. http: optimize headers iteration

    This commit uses instanceof instead of Array.isArray() for faster
    type checking and avoids calling Object.keys() when the headers are
    stored as a 2D array instead of a plain object.
    
    PR-URL: nodejs#6533
    Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
    Reviewed-By: James M Snell <jasnell@gmail.com>
    Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
    Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
    mscdex committed Dec 29, 2016
    Configuration menu
    Copy the full SHA
    4d7531d View commit details
    Browse the repository at this point in the history