From 0c7094f6af4e0ee592bb0d6e06be3d5e94b4eea2 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Fri, 7 Sep 2012 18:29:31 +0200 Subject: [PATCH] #2441 - Updating howto.rst to include all the summer of blog posts and removed the howdoi.rst --- akka-docs/general/howdoi.rst | 31 --------------- akka-docs/general/index.rst | 3 +- akka-docs/scala/howto.rst | 73 +++++++++++++++++++++++++++++++++--- 3 files changed, 69 insertions(+), 38 deletions(-) delete mode 100644 akka-docs/general/howdoi.rst diff --git a/akka-docs/general/howdoi.rst b/akka-docs/general/howdoi.rst deleted file mode 100644 index 0dd9a12ed9..0000000000 --- a/akka-docs/general/howdoi.rst +++ /dev/null @@ -1,31 +0,0 @@ -.. _howdoi: - -How do I … -================================ - -This section of the Akka Documentation tries to answer common usage questions. - -… deal with blocking third-party code? --------------------------------------- - -Some times you cannot avoid doing blocking, and in that case you might want to explore the following: - - 1. Isolate the blocking to a dedicated ``ExecutionContext`` - 2. Configure the actor to have a bounded-mailbox as to prevent from excessive mailbox sizes - -.. note:: - - Before you do anything at all, measure! - - -… use persistence with Akka? ----------------------------- - -You just use it? -You might want to have a look at the answer to the question about blocking though. - -… use a pool of connections/whatnots ------------------------------------- - -You most probably want to wrap that pooling service as an Akka Extension, -see the docs for documentation on Java / Scala Extensions. \ No newline at end of file diff --git a/akka-docs/general/index.rst b/akka-docs/general/index.rst index edfebff5c5..e76a81a80c 100644 --- a/akka-docs/general/index.rst +++ b/akka-docs/general/index.rst @@ -11,5 +11,4 @@ General remoting jmm message-send-semantics - configuration - howdoi + configuration \ No newline at end of file diff --git a/akka-docs/scala/howto.rst b/akka-docs/scala/howto.rst index c588c2fe25..bcaa456b82 100644 --- a/akka-docs/scala/howto.rst +++ b/akka-docs/scala/howto.rst @@ -19,7 +19,7 @@ Throttling Messages Contributed by: Kaspar Fischer -A message throttler that ensures that messages are not sent out at too high a rate. +"A message throttler that ensures that messages are not sent out at too high a rate." The pattern is described `here `_. @@ -28,9 +28,9 @@ Balancing Workload Across Nodes Contributed by: Derek Wyatt -Often times, people want the functionality of the BalancingDispatcher with the +"Often times, people want the functionality of the BalancingDispatcher with the stipulation that the Actors doing the work have distinct Mailboxes on remote -nodes. In this post we’ll explore the implementation of such a concept. +nodes. In this post we’ll explore the implementation of such a concept." The pattern is described `here `_. @@ -39,15 +39,78 @@ Ordered Termination Contributed by: Derek Wyatt -When an Actor stops, its children stop in an undefined order. Child termination is +"When an Actor stops, its children stop in an undefined order. Child termination is asynchronous and thus non-deterministic. If an Actor has children that have order dependencies, then you might need to ensure a particular shutdown order of those children so that their postStop() methods get -called in the right order. +called in the right order." The pattern is described `here `_. +Akka AMQP Proxies +================= + +Contributed by: Fabrice Drouin + +"“AMQP proxies” is a simple way of integrating AMQP with Akka to distribute jobs across a network of computing nodes. +You still write “local” code, have very little to configure, and end up with a distributed, elastic, +fault-tolerant grid where computing nodes can be written in nearly every programming language." + +The pattern is described `here `_. + +Shutdown Patterns in Akka 2 +=========================== + +Contributed by: Derek Wyatt + +“How do you tell Akka to shut down the ActorSystem when everything’s finished? +It turns out that there’s no magical flag for this, no configuration setting, no special callback you can register for, +and neither will the illustrious shutdown fairy grace your application with her glorious presence at that perfect moment. +She’s just plain mean. + +In this post, we’ll discuss why this is the case and provide you with a simple option for shutting down “at the right time”, +as well as a not-so-simple-option for doing the exact same thing." + +The pattern is described `here `_. + +Distributed (in-memory) graph processing with Akka +================================================== + +Contributed by: Adelbert Chang + +"Graphs have always been an interesting structure to study in both mathematics and computer science (among other fields), +and have become even more interesting in the context of online social networks such as Facebook and Twitter, +whose underlying network structures are nicely represented by graphs." + +The pattern is described `here `_. + +Case Study: An Auto-Updating Cache Using Actors +=============================================== + +Contributed by: Eric Pederson + +"We recently needed to build a caching system in front of a slow backend system with the following requirements: + +The data in the backend system is constantly being updated so the caches need to be updated every N minutes. +Requests to the backend system need to be throttled. +The caching system we built used Akka actors and Scala’s support for functions as first class objects." + +The pattern is described `here `_. + +Discovering message flows in actor systems with the Spider Pattern +================================================================== + +Contributed by: Raymond Roestenburg + +"Building actor systems is fun but debugging them can be difficult, you mostly end up browsing through many log files +on several machines to find out what’s going on. I’m sure you have browsed through logs and thought, +“Hey, where did that message go?”, “Why did this message cause that effect” or “Why did this actor never get a message?” + +This is where the Spider pattern comes in." + +The pattern is described `here `_. + Template Pattern ================