Open joebowbeer opened 2 years ago
I agree that this should be in the Readme - maybe under Security considerations? If you don't mind and have the time, you can suggest the edit in https://github.com/Papooch/nestjs-cls/pull/11. I've not had much time lately, but I'm planning to add some git actions and revising the Readme by the end of the week.
I think it would be great to compare this lib with nestjs's durable providers feature in terms of performance gains.
Yup, it would be nice to to have a benchmark, maybe someday I can make myself create one. However, it's important to note that AsyncLocalStorage and Request scoped providers don't have 100% feature overlap, so performance is not the key decision factor here.
I suggest adding additional sections to the README or FAQ:
Performance concerns with AsyncLocalStorage?
This question sometimes arises because of early concerns with async_hooks performance.
See for example: https://github.com/iamolegga/nestjs-pino/issues/322
Is there currently a concern? (I am not aware of any.)
Stability of AsyncLocalStorage?
According to Node documentation, AsyncLocalStorage is stable, even though the parent async_hooks is still experimental.
https://nodejs.org/api/async_context.html#class-asynclocalstorage
Could a more performant request-scoped provider implementation solve this problem?
In addition to performance, another problem with request-scoped providers is the scope hierarchy implementation in NestJS:
See https://stackoverflow.com/a/59681868/901597
This provider does not have this restriction.