No description
Instead of isTerminated we now use death watch on subscribers. ! Breaking change - ActorClassification based event buses now require and actor system. Previously no actors were involved, but now someone has to `watch` the subscribers. The unsubscriber is an system actor, and won't be stopped automagically if a bus stops to be used (hard to determine what "stops being used" is) * Replaced isTerminated checks with watching actors * backing structure for ActorClassification swaped from ConcurrentHashMap to immutable.Map with CAS operations on it. This is required to avoid races and guarantee register/unregister ordering (messages sent with proper sequence numbers) to the unsubscriber. Performance tested it and still above 1.3million subscribe+unsubscribe ops per second (mac i7, retina), where as the CHM version was 4 million - but that one could only work in the presence of itTerminated - so we pay the price here for removing it. * `ActorClassification` starts the unsubscriber instance by itself, the unsubscriber is an system actor, and can be stopped via `ActorClassification#shutdown` * Will unregister from unsubscriber, when no more subscriptions for given subscriber are left in this bus. * Added missing "Java API: " for some types * Updated docs to point out the automatic subscriber purging (on terminated) |
||
|---|---|---|
| akka-actor/src/main | ||
| akka-actor-tests/src/test | ||
| akka-agent/src | ||
| akka-camel/src | ||
| akka-cluster/src | ||
| akka-contrib | ||
| akka-docs | ||
| akka-kernel/src/main | ||
| akka-multi-node-testkit/src/main | ||
| akka-osgi/src | ||
| akka-persistence/src | ||
| akka-remote/src | ||
| akka-remote-tests/src | ||
| akka-samples | ||
| akka-slf4j/src | ||
| akka-testkit/src | ||
| akka-zeromq/src | ||
| atmos/src/main/resources | ||
| project | ||
| scripts | ||
| src/main/ls | ||
| .gitignore | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| 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 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 the telecom industry has used with great success to build applications that self-heal and 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.