Windows Azure Integration Pack - Autoscaling Application Block (WASABi) - BETA
Where to get it?
- The Stabilizer increases hysteresis in the block's scaling operations by preventing reactive rules from performing repeated and erratic scaling actions.
- Application throttling provides a new reactive rule action for changing a Windows Azure configuration setting for a specific role when a rule condition is satisfied. Through this, you can limit or disable certain relatively expensive operations in your application when the load is above certain thresholds.
- E-mail notifications allow for hypothetical scaling. The block still evaluates the rules and makes a decision (recommendation) on what should be scaled and how, but instead of performing the change it sends a notification to configured recipients (human operators) to scale manually or to perform some other action.
- Collection of role instance count values for every role defined in the service information store (this is mainly used by the stabilizer feature, but users could also use it in operands for rule conditions).
- Ability to define custom actions for reactive rules.
- Ability to specify custom operands for use in reactive rule conditions.
- New "Max" and "Growth" aggregate functions in operand definition.
- Enhanced log messages for rules evaluation and scaling to better determine what is happening in the system.
- Added an Evaluation ID to correlate all log messages for a specific evaluation pass.
- Added JSON payloads to log messages to assist tools that monitor and interpret the messages.
- Provided utility classes and constant definitions to read and parse the log messages.
- Configuration tool enhancements, including better names and descriptions for configuration objects, validation, and a Windows Azure connection string editor.
- Updated the logic in the RulesEvaluator.
- Renamed "name" property to "alias" in most entities defined in the Service Information Model, to disambiguate logical lookup names with actual physical names in Windows Azure.
- Renamed "SourceLogger" to "SystemDiagnosticsLogger".
- Refactored "scale" XML element in the rules schema to make it more user-friendly by removing the "targetType" and "unit" properties, and inferring them from usage.
- Provided a better definition of when there are sufficient data points for the block to evaluate a rule.
- Added a NOT Boolean element for specifying rule conditions.
- Added support for basic arithmetic expressions (multiplication and division) for parameters in specifying rule conditions.
- Added "Rank" (priority) to reactive rules (previously it was only possible to set it on constraint rules).
- Fixed several crashes due to transient network faults.
- Fixed several crashes due to errors in rules or service information stores.
- Re-implemented algorithm for data point collection of performance counters information to fix several issues that caused this information not to be collected correctly in certain environments.
- Support for changes to the rules and service information stores, which re-configures what data to collect for rules evaluation.
- Validation of logical errors in rules and service information stores.
Please follow the instructions in the included Readme file to learn how to use the block binaries and about the pre-requisites if you want to build the block from source.
This time we are shipping a draft set of documentation
, which includes the reference documentation and an early preview of the Developer’s Guide to WASABi. .
Additionally, we are shipping a beta of the Tailspin Reference Implementation (sample app) that showcases various usages of the Autoscaling Application Block. We’ve expanded the scope of the Tailspin reference implementation originally shipped with the Developing Application for the Cloud Guide by making it more elastic.
The video walkthrough is avaialble via Channel9
To provide feedback about this release, the reference implementation or written guidance, or to get help with any problems, please visit the Enterprise Library discussion forum.
We look forward to your comments!