Which primitives to use? Difficult to predict & maintain Deadlock Livelock Thread starvation Race condition *Using threads directly is meant here **Performance improvement degrades with more threads than cores.
Akka A uniform model for both up and out, embraces concurrency and failure Maximize the use of cores _and_ nodes. Concurrent (more Cores) Distributed (more Nodes)
system.actorOf( Props[RestInterface], “httpInterface”) … CREATE RestInterface ActorSystem(“goticks”) ActorRef to the Actor ActorSystem(“goticks”) REST Interface
soldOut def soldOut:Receive = { case Tickets(newTickets) => .. //store new tickets become(selling) } def selling:Receive = { case BuyTicket(name) => … } } Partial Function 3. BECOME: You can change th behavior at every msg