Akka(1)Introduction
1. Introduction
1.1 What is Akka?
Design to write correct concurrent, fault-tolerant and scalable applications.
Akka implements a unique hybrid
Actors
Simple and high-level abstractions for concurrency and parallelism.
Asynchronous, non-blocking and highly performant event-driven programming model.
lightweight event-driven processes, 2.7 million actors per GB RAM
Scala documents: http://doc.akka.io/docs/akka/2.1.0/scala/actors.html#actors-scala
Fault Tolerance
Fault handling in Practice for scala
http://doc.akka.io/docs/akka/2.1.0/scala/fault-tolerance.html#fault-tolerance-scala
Location Transparency
All interactions of actors use pure message passing and everything is asynchronous.
http://doc.akka.io/docs/akka/2.1.0/general/remoting.html#remoting
Transactors
transactors combine actors and Software Transactional Memory(STM) into transactional actors.
http://doc.akka.io/docs/akka/2.1.0/scala/transactors.html#transactors-scala
Scala APIs
http://doc.akka.io/docs/akka/2.1.0/scala/index.html#scala-api
Akka can be used in 2 different ways
As a library in WEB-INF/lib
As a microkernel, stand-alone kernel
http://doc.akka.io/docs/akka/2.1.0/scala/microkernel.html#microkernel-scala
1.2. Why Akka?
…snip...
1.3 Getting Started
Getting Started Guides and Template Projects
Install Typesafe Stack
Follow the document here: http://typesafe.com/stack/download-agreed
Install scala, set, maven and giter8. But I already have all of them except giter8.
>sudo port install giter8
And download the file from here http://downloads.typesafe.com/typesafe-stack/2.0.2/typesafe-stack-2.0.2.tgz
Unzip and place in working directory.
I already have all the tools, so I do not need type safe stack bin, I just will go through the example.
Visit this page, you can find all the examples:
https://github.com/typesafehub
Modules
akka-actor Classic Actors, Typed Actors, IO Actor etc.
akka-remote Remote Actors
akka-testkit
akka-kernel Akka microkernel for running a bare-bones mini application server
akka-transactor Transactional actors
akka-agent
akka-camel
akka-zeromq ZeroMQ integration
akka-slf4j
akka-filebased-mailbox
Using a release distribution
Download the file from here: http://typesafe.com/stack/downloads/akka
Using with sbt
"typesafe repo" at "http://repo.typesafe.com/typesafe/releases/",
"com.typesafe.akka" %% "akka-actor" % "2.1.0",
"com.typesafe.akka" %% "akka-testkit" % "2.1.0",
"com.typesafe.akka" %% "akka-transactor" % "2.1.0",
How can I use and deploy Akka
…snip…
References:
http://akka.io/
http://doc.akka.io/docs/akka/2.1.0/
http://typesafe.com/resources/tutorials/getting-started-with-akka-scala.html#getting-started-with-akka-scala
https://github.com/typesafehub
1. Introduction
1.1 What is Akka?
Design to write correct concurrent, fault-tolerant and scalable applications.
Akka implements a unique hybrid
Actors
Simple and high-level abstractions for concurrency and parallelism.
Asynchronous, non-blocking and highly performant event-driven programming model.
lightweight event-driven processes, 2.7 million actors per GB RAM
Scala documents: http://doc.akka.io/docs/akka/2.1.0/scala/actors.html#actors-scala
Fault Tolerance
Fault handling in Practice for scala
http://doc.akka.io/docs/akka/2.1.0/scala/fault-tolerance.html#fault-tolerance-scala
Location Transparency
All interactions of actors use pure message passing and everything is asynchronous.
http://doc.akka.io/docs/akka/2.1.0/general/remoting.html#remoting
Transactors
transactors combine actors and Software Transactional Memory(STM) into transactional actors.
http://doc.akka.io/docs/akka/2.1.0/scala/transactors.html#transactors-scala
Scala APIs
http://doc.akka.io/docs/akka/2.1.0/scala/index.html#scala-api
Akka can be used in 2 different ways
As a library in WEB-INF/lib
As a microkernel, stand-alone kernel
http://doc.akka.io/docs/akka/2.1.0/scala/microkernel.html#microkernel-scala
1.2. Why Akka?
…snip...
1.3 Getting Started
Getting Started Guides and Template Projects
Install Typesafe Stack
Follow the document here: http://typesafe.com/stack/download-agreed
Install scala, set, maven and giter8. But I already have all of them except giter8.
>sudo port install giter8
And download the file from here http://downloads.typesafe.com/typesafe-stack/2.0.2/typesafe-stack-2.0.2.tgz
Unzip and place in working directory.
I already have all the tools, so I do not need type safe stack bin, I just will go through the example.
Visit this page, you can find all the examples:
https://github.com/typesafehub
Modules
akka-actor Classic Actors, Typed Actors, IO Actor etc.
akka-remote Remote Actors
akka-testkit
akka-kernel Akka microkernel for running a bare-bones mini application server
akka-transactor Transactional actors
akka-agent
akka-camel
akka-zeromq ZeroMQ integration
akka-slf4j
akka-filebased-mailbox
Using a release distribution
Download the file from here: http://typesafe.com/stack/downloads/akka
Using with sbt
"typesafe repo" at "http://repo.typesafe.com/typesafe/releases/",
"com.typesafe.akka" %% "akka-actor" % "2.1.0",
"com.typesafe.akka" %% "akka-testkit" % "2.1.0",
"com.typesafe.akka" %% "akka-transactor" % "2.1.0",
How can I use and deploy Akka
…snip…
References:
http://akka.io/
http://doc.akka.io/docs/akka/2.1.0/
http://typesafe.com/resources/tutorials/getting-started-with-akka-scala.html#getting-started-with-akka-scala
https://github.com/typesafehub