Data export is performed by Back-end mod-data-export module. Drawbacks of the approach
Drawio | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Pic. 1.
This approach's technical limitations to being extended to other use cases:
- This approach is customized specialized to export data from SRS and Inventory modules only. There are no extension points to other scopes, which allow to easily add export from other modules.
- Bad separation of concerns in the source code. As result, it is hard to extend it.
Each export job is executed within the scope of a single HTTP request, which makes the job unreliable. The job may fail in case of HTTP request timeout.
- There is no job retry logic, which also makes jobs the job unreliable.
The codebase is more complex than the Spring way one due to the usage of Vert.x and reactive programming.The reactive programming doesn't bring benefits in this case due to blocking operations.
- It is based on RMB which should be considered as deprecated soon