Skip to content

Conversation

@Romakita
Copy link
Collaborator

@Romakita Romakita commented Apr 23, 2024

Information

Type Breaking change
Chore No

Fix a vunerability over Supertest package that use superagent that use formidable. The exploit is limited to the devDependencies for this repository. No issue with the deployed package on NPM.

@github-actions
Copy link

Benchmarks

  • Machine: linux x64 | 4 vCPUs | 15.6GB Mem
  • Node: v18.20.2
  • Run: Tue Apr 23 2024 07:10:10 GMT+0000 (Coordinated Universal Time)
  • Method: autocannon -c 100 -d 10 -p 10 localhost:3000 (two rounds; one to warm-up, one to measure)
Version Router Requests/s Latency Throughput/Mb
koa 2.13.4 31767.3 30.95 5.67
tsed-koa 7.67.6 11758.9 84.23 9.96
express 4.18.1 9924.8 99.97 1.77
express-injector 4.18.1 9509.6 104.27 2.17
nest 8.4.3 8964.9 110.43 2.15
tsed-express 7.67.6 7995.0 123.82 1.46
express-morgan 4.18.1 5396.1 183.39 0.96
fastify-big-json 3.29.4 N/A N/A N/A
fastify-injector 3.29.4 N/A N/A N/A
fastify 3.29.4 N/A N/A N/A
nest-fastify 8.4.3 N/A N/A N/A

Explanation

The benchmark shows a performance difference between the frameworks. We note that Ts.ED is often last. In fact, Ts.ED uses features useful to a production application which reduce its performance.

For example, Ts.ED initializes a sandbox (async_hook) for each request in order to work in an isolated context if necessary.
It also initializes the elements necessary for monitoring requests in a log manager.

All this at a necessary cost that reflects the reality of a production application ;)

@Romakita Romakita force-pushed the production branch 4 times, most recently from b76e7c8 to 9230a2a Compare August 25, 2024 08:18
@Romakita Romakita force-pushed the production branch 7 times, most recently from e7aa499 to 000a6b4 Compare December 5, 2024 20:03
@Romakita Romakita force-pushed the production branch 2 times, most recently from de8df3b to 474e2d8 Compare December 17, 2024 19:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants