Start and stop your components in proper order
- System built on components
- Dependencies between components
- Graceful start and stop
- Dependencies are controlled globaly
- More descriptive dependencies
- renaming
- taking subresources
- Grouping subsystems
- Type-based
- Promise interface instead of callback interface
- More ergonomic system grouping
- Opportunity for restarting the whole system from any component
- Opportunity for stopping the whole system from any component
- Opportunity for ignorable component errors
- Graceful stop and optional process exit on abnormal behavior
- Graceful SIGINT / SIGTERM termination
- start
resources: ResourceDescriptor- all resources of the whole system
- stop
- restart
resources: ResourceDescriptor- all resources of the whole system after restart
- componentStart
componentName: Stringresources: ResourceDescriptor- currently available resources
- componentStartFailed
componentName: Stringerror: Error
- componentStop
componentName: String
- componentStopFailed
componentName: Stringerror: Error
- stopTimeout
stopTimeout: Number
- componentRunFailed
componentName: Stringerror: Error
- uncaughtException
error: Error
- unhandledRejection
error: Error
- terminate
signal: String
- exit
code: Number