No description
* Uses finite state machine for three states: Closed, Open, Half-Open
* Closed state allows calls through, and on sequential failures exceeding the max# set - transitions to Open state. Intervening successes cause the failure count to reset to 0
* Open state throws a CircuitOpenException on every call until the reset timeout is reached which causes a transition to Half-Open state
* Half-Open state will allow the next single call through, if it succeeds - transition to Closed state, if it fails - transition back to Open state, starting the reset timer again
* Allow configuration for the call and reset timeouts, as well as the maximum number of sequential failures before opening
* Supports async or synchronous call protection
* Callbacks are supported for state entry into Closed, Open, Half-Open. These are run in the supplied execution context
* Both thrown exceptions and calls exceeding max call time are considered failures
* Uses akka scheduler for timer events
* Integrated into File-Based durable mailbox
* Sample documented for other durable mailboxes
|
||
|---|---|---|
| akka-actor/src/main | ||
| akka-actor-tests/src/test | ||
| akka-agent/src | ||
| akka-camel/src | ||
| akka-cluster/src | ||
| akka-docs | ||
| akka-durable-mailboxes | ||
| akka-kernel/src/main | ||
| akka-remote/src | ||
| akka-remote-tests/src | ||
| akka-samples | ||
| akka-sbt-plugin | ||
| akka-slf4j/src | ||
| akka-testkit/src | ||
| akka-transactor/src | ||
| akka-zeromq/src | ||
| project | ||
| scripts | ||
| src/main/ls | ||
| .gitignore | ||
| LICENSE | ||
| ls.sbt | ||
| README.textile | ||
h1. Akka We believe that writing correct concurrent, fault-tolerant and scalable applications is too hard. Most of the time it's because we are using the wrong tools and the wrong level of abstraction. Akka is here to change that. Using the Actor Model together with Software Transactional Memory we raise the abstraction level and provide a better platform to build correct concurrent and scalable applications. For fault-tolerance we adopt the "Let it crash" model which have been used with great success in the telecom industry to build applications that self-heal, systems that never stop. Actors also provide the abstraction for transparent distribution and the basis for truly scalable and fault-tolerant applications. Akka is Open Source and available under the Apache 2 License. Learn more at "http://akka.io":http://akka.io.