Ben Noordhuis
ba407ce410
bench: use res.end() for chunked encoding
Use res.end() for the final chunk so we can benchmark the 'hot path' shortcut
in lib/http.js that packs the headers and the body into a single packet.
12 years ago
isaacs
8a946c2ee7
benchmark: Backport improvements made in master
Ported to v0.6 for easier comparison in the 0.8.0 blog post.
13 years ago
Bert Belder
4ddafbd563
Benchmark: add /unicode/nnn bench to http_simple.js
13 years ago
Bert Belder
7f68f256cf
Benchmark: clean up http_simple.js
13 years ago
isaacs
45c1d4f96f
Add switches to http_simple bench to use domains
13 years ago
Ben Noordhuis
8b2abed03d
bench: add /echo endpoint to http_simple
Copies the POST request data verbatim into the response body.
13 years ago
Ryan Dahl
16e1d5b5ce
Remove uname and git-rev detection from http_simple.js
13 years ago
Ryan Dahl
f018be3b5f
Print libuv counters after http_simple exits
13 years ago
Ben Noordhuis
63607a0304
bench: make number of response body chunks configurable in http_simple
13 years ago
Ben Noordhuis
d72c6940f8
bench: make http_simple send chunked encoding if requested
13 years ago
Ryan Dahl
08bec7ab0a
Remove debugger statement from http_simple.js
results in slow bench
14 years ago
Ryan Dahl
62e0ca05a6
debugger: Disable/Enable raw mode for child
14 years ago
Ryan Dahl
ff456b3886
Add 'make bench' script
14 years ago
Ryan Dahl
cdde22a27d
Improve benchmark/http_simple.js
14 years ago
Blake Mizerany
8c8534046c
fix whitespace errors
15 years ago
Ryan Dahl
444b33584d
Remove switch-replace residue
15 years ago
Ryan Dahl
ba792ea202
:%s/sys.puts/console.log/g
and there was much rejoicing
15 years ago
Ryan Dahl
ab723d022d
Add buffer response to http_simple.js
15 years ago
Ryan Dahl
99984772df
Allow different ports for http_simple.js
15 years ago
Ryan Dahl
ac3bc2ed41
Simplify GC idle notification
In particular, don't leave the timeout running when the heap is fully
compacted.
15 years ago
Ryan Dahl
b36f11d7b5
Set old/new from benchmark script args
15 years ago
Ryan Dahl
50c70ac714
Update stream API: forceClose() -> destroy(), close() -> end()
15 years ago
Ryan Dahl
62277ab79b
Support both old and new HTTP closing APIs in benchmark program
15 years ago
Ryan Dahl
0281e1acf6
Fix benchmark script for testing both old and new version
15 years ago
Ryan Dahl
1b758ef268
Allow stream to write on close
15 years ago
Ryan Dahl
b80f6e9ed1
http2 now default
15 years ago
Ryan Dahl
1762abcece
http2 now passes all tests
15 years ago
Ryan Dahl
b07f2e25f4
Update http2 for new stream API
15 years ago
Ryan Dahl
04999ef969
Remove -Werror from deps/v8/SConstruct
-_-
15 years ago
isaacs
c488e5775a
Remove process.mixin dependencies from benchmark scripts
15 years ago
Benjamin Thomas
b1b84960ce
Rename writeHeader to writeHead
15 years ago
Ryan Dahl
12d78cd1df
Rename sendHeader to writeHeader; allow reasonPhrase
15 years ago
Ryan Dahl
7c1c89fc29
Update benchmark script to new API
15 years ago
Ryan Dahl
ae85d9af97
API: Make request/response object closer to stream interface
- sendBody() renamed to write()
- 'body' event renamed to 'data'
- 'complete' event renamed to 'end'
15 years ago
Ryan Dahl
8e0dad4a27
Update http benchmark script to new url api.
15 years ago
Ryan Dahl
54c8ea5ea2
Fix http_simple server for new API
15 years ago
Ryan Dahl
d582599c14
Upgrade benchmark scripts for new module API
15 years ago
Ryan Dahl
ad0a4cefb8
Namespace EVERYTHING under process; introduce GLOBAL
http://groups.google.com/group/nodejs/browse_thread/thread/1034fd2ad2cd93e8
15 years ago
Ryan Dahl
04e53cab90
Rename node.libraryPaths to require.paths
to be more inline with CommonJS.
15 years ago
Ryan Dahl
8185e1fd25
Remove include() add node.mixin()
include() should not be used by libraries because it will pollute the global
namespace. To discourage this behavior and bring Node more in-line with
the current CommonJS module system, include() is removed.
Small scripts like unit tests often times do want to pollute the global
namespace for ease. To avoid the boiler plate code of
var x = require("/x.js");
var foo = x.foo;
var bar = x.bar;
The function node.mixin() is stolen from jQuery's jQuery.extend. So that it
can be written:
node.mixin(require("/x.js"));
Reference:
http://docs.jquery.com/Utilities/jQuery.extend
http://groups.google.com/group/nodejs/browse_thread/thread/f9ac83e5c11e7e87
15 years ago
Ryan Dahl
f6657c3c9d
Move http library to /http.js
15 years ago
Ryan
316e2833f0
Use flat object instead of array-of-arrays for HTTP headers.
E.G. { "Content-Length": 10, "Content-Type": "text/html" } instead of
[["Content-Length", 10], ["Content-Type", "text/html"]].
The main reason for this change is object-creation efficiency.
This still needs testing and some further changes (like when receiving
multiple header lines with the same field-name, they are concatenated with a
comma but some headers ("Content-Length") should not be concatenated ; the
new header line should replace the old value).
Various thoughts on this subject:
http://groups.google.com/group/nodejs/browse_thread/thread/9a67bb32706d9efc#
http://four.livejournal.com/979640.html
http://mail.gnome.org/archives/libsoup-list/2009-March/msg00015.html
15 years ago
Ryan
70fe920fb5
Use events for all HTTP messages.
This is a rather large refactor! Mostly for the better side. I've had to
remove some functionality like req.interrupt(). A lot of other work is left
messy or incomplete.
16 years ago
Ryan
61fcbb1cd6
Add benchmark dir with ruby script
16 years ago
Ryan
e30e4415ee
Fixes for ipv6
16 years ago
Ryan
a1aecc9378
HTTP Server: Close 1.0 connections properly.
16 years ago
Ryan
87e6578aa9
Simple HTTP client is working a bit.
16 years ago
Ryan
edc38b4134
Use parseUri() for req.uri. Update docs.
16 years ago
Ryan
478e45a32f
Change request handler to take two parameters: req, res.
This is more semantic, albeit unnecessary, usage. I think users will
be able to remember the API more easily.
16 years ago
Ryan
175223d5d7
Remove HTTP parser callbacks for fragment, query_string, path.
Instead we're going to just get a single callback for the URI. This can be
parsed additionally in javascript using parseuri:
http://blog.stevenlevithan.com/archives/parseuri
I haven't added that yet, but it will come soon.
16 years ago