4 ms·
Jan from ArangoDB here: Did you read the appendix? "We used a TCP/IP connection pool of up to 25 connections, whenever the driver permitted this. All drivers
by janemanos 9y ago
Jan from ArangoDB here:
Did you read the appendix?
"We used a TCP/IP connection pool of up to 25 connections, whenever the driver permitted this. All drivers seem to support this connection pooling, except Neo4j. We sent instead twenty-five requests via NodeJS to Neo4j."
Just to avoid unfair conditions now, if connection pooling is possible with the neojs driver, then you would have to configure the benchmark scripts to not send 25 requests via Node as well.
We tricked ourselves with such stuff when preparing the benchmark.
- maxdemarzi 9y agoDid you read the manual where it says the driver permits connection pooling? http://neo4j.com/docs/developer-manual/current/drivers/client-applications/#driver-config-connection-pool-management http://neo4j.com/docs/developer-manual/current/drivers/clien...
- janemanos 9y agoHi Max.. thanks also for your feedback. We worked it into an update to the benchmark, please find it here: https://news.ycombinator.com/item?id=16473117 https://news.ycombinator.com/item?id=16473117
- jakewins 9y agoYep, I removed the CONCURRENCY constant from the neo4j description.js, so the numbers above are for Neo running without that async.eachLimit call, just like the rest of the databases. A single session object is backed by a single connection, so even though you "send" 25 requests via async.eachLimit, the result is that they are serialized over the single connection.