According to my understanding, the following comparison is true of extensions and services used instead of extensions.
| Feature |
Extension |
Service |
| Provides access to inner bindings |
✅ |
✅ |
| Loaded into |
every isolate |
own isolate |
| CPU overhead |
very low |
low |
| Memory overhead |
O(num_workers), small constant factor |
O(1), high constant factor |
| Binding isolation |
high |
very high |
| Typescript compatibility |
okay |
minimal |
| Ideal for |
convenience, efficiency |
separation, composability |
Is this all fair to say? There's not much documentation for extensions or wrapped bindings, and they're not used very often, so I wasn't able to find answers elsewhere.
According to my understanding, the following comparison is true of extensions and services used instead of extensions.
Is this all fair to say? There's not much documentation for extensions or wrapped bindings, and they're not used very often, so I wasn't able to find answers elsewhere.