0.2.0-a1 : Modules
Overview checklist
- Code base structure refactoring
- FailoverLine implementations now can be added as modules
- RequestDriver implementations now can be added as modules
- Each bundle can have unique configuration for timeout values and failover line used
- ametiste-redgreen-sdk module provides core API to implement application extensions
- ametiste-redgreen-hystrix reimplemented using ametiste-redgreen-sdk module
Configuration changes
New configuration properties are introduced within the release.
Resource Bundle Configuration
- redgreen.direct.bundles.[BUNDLE-NAME].line - defines FailoverLine implementation that would be used to process incoming requests on the bundle. By default is hystrixSimpleLine.
- redgreen.direct.bundles.[BUNDLE-NAME].connectionTimeout - defines connection timeout value that would be applied for each connection to bundled resources. By default is 300.
- redgreen.direct.bundles.[BUNDLE-NAME].readTimeout - defines read timeout value that would be applied for each read of bundled resources. By default is 1500.
Example
Now it is possible to have number of resource bundles that has different configurations.
redgreen.direct.bundles.t-bundle.line=simpleFailoverLine redgreen.direct.bundles.e-bundle.readTimeout=3500 redgreen.direct.bundles.t-bundle.green=http://example.xcom/ redgreen.direct.bundles.t-bundle.red=http://example.bcom/,http://example.com/ redgreen.direct.bundles.e-bundle.line=complexFailoverLine redgreen.direct.bundles.e-bundle.connectionTimeout=100 redgreen.direct.bundles.e-bundle.readTimeout=800 redgreen.direct.bundles.e-bundle.green=http://example.xcom/ redgreen.direct.bundles.e-bundle.red=http://example.bcom/,http://example.com/