Zurück zur Skill-Übersicht

Skill-Wissen und Projektmarkt

Akka

Freelancer, Projekte, Experten und Wissen rund um Akka.

Kategorie

Backend

Einordnung

Akka Freelancer, Projekte, Experten und Wissen auf jobtic.com

Akka gehört zu den gefragtesten Kompetenzen im modernen IT-Projektmarkt. Unternehmen, Recruiter, Projektanbieter und Agenturen suchen kontinuierlich nach qualifizierten IT-Freelancern, Beratern, Entwicklern, Consultants, Administrators, Engineers und Spezialisten mit Erfahrung in Akka.

Auf jobtic.com finden Unternehmen und Freelancer eine moderne Plattform für IT-Projekte, Projektvermittlung, Freelancer-Profile, Experten-Suche, Projektakquise und berufliche Vernetzung rund um Akka und viele weitere Technologien, Tools, Systeme, Methoden und IT-Bereiche.

Wikipedia

Akka (toolkit)

Artikel öffnen
This article is about the software development kit. For other uses, see Akka.

Akka is a source-available platform, SDK, toolkit, and runtime simplifying building concurrent and distributed applications on the JVM, for example, agentic AI, microservices, edge/IoT, and streaming applications. Akka supports multiple programming models for concurrency and distribution, but it emphasizes actor-based concurrency, with inspiration drawn from Erlang.[1]

Language bindings exist for both Java and Scala. Akka is mainly written in Scala.[2]

History

An actor implementation, written by Philipp Haller, was released in July 2006 as part of Scala 2.1.7.[3] By 2008 Scala was attracting attention for use in complex server applications, but concurrency was still typically achieved by creating threads that shared memory and synchronized when necessary using locks. Aware of the difficulties with that approach and inspired by the Erlang programming language's library support for writing highly concurrent, distributed, and event-driven applications, the Swedish programmer Jonas Bonér created Akka to bring similar capabilities to the JVM. Bonér began working on Akka in early 2009[4] and wrote up his vision for it in June of that year.[5] The first public release was Akka 0.5,[6] announced in January 2010.[7] Akka is now part of the Lightbend Platform together with the Play framework and the Scala programming language.

In September 2022, Lightbend announced that Akka would change its license from the free software license Apache License 2.0 to a proprietary source-available license, known as the Business Source License (BSL). Any new code under the BSL would become available under the Apache License after three years.[8]

Apache Pekko is an Apache licensed fork of Akka[9].

Distinguishing features

The key points distinguishing applications based on Akka are:

  • Asynchronous and non-blocking communication, distribution, and concurrency: Akka applications are event-based, asynchronous, and non-blocking: no mutable data are shared, and no synchronization primitives are used; Akka implements the actor model with support for streaming, Publish-Subscribe, HTTP, gRPC, and multiple other protocols (through the Alpakka module).
  • Location transparency: The way Akka-based services/agents interact is the same whether they are on the same host or separate hosts (cores, nodes, data centers, or clouds), communicating directly or through routing facilities. This means that the topology of the application is not fixed but dynamic and may be altered at deployment time through a configuration mechanism, allowing a program to be scaled up (to make use of more powerful servers), out (to make use of more servers), and clustered, without code modifications.
  • Self-healing through declarative failure management: Actors are arranged hierarchically in so-called ‘supervisor hierarchies’. Failures are treated as immutable facts, reified events, and sent asynchronously to the component’s supervisor, who can manage the failure in a safe and healthy context outside of the failed component (which, thanks to location transparency, can be on another node or even data center). In contrast to Erlang, Akka enforces parental supervision, which means that each actor is created and supervised by its parent actor.
  • Durable replicated in-memory persistence: Akka services/agents are durable with their in-memory state acting as the source of truth and each state-changing event (immutable fact) is logged to disk in the order they arrive leveraging so-called event-sourcing. Replaying the event log allows them to gracefully recover from failure, sourcing replicas, and provides a built-in audit log (full history) of everything that has happened in the system.
  • Multi-region/multi-cloud clustering: Akka services/agents are clustered automatically “from within”. Each service is its own fully replicated and sharded cluster of nodes that can span multiple data centers, regions, clouds, or span from the cloud to the edge.

The programming model for Akka consists of Akka SDK and Akka Libraries:

  • Akka Libraries is an open-ended toolkit for building distributed systems. It has a modular structure, with a core module providing actors. Other modules are available to add features such as network distribution of actors, cluster support, Command and Event Sourcing, data distribution and management (through CRDTs and event logging), integration with various third-party systems through the Alpakka streaming integration module, and even support for other concurrency models such as asynchronous stream-processing and Futures.
  • Akka SDK is a high-level and opinionated framework built on top of the Akka Libraries. It encodes the most common and useful patterns and best practices learned from the use of Akka Libraries through a set of discrete composable components (Entity, View, Endpoint, Workflow, Consumer, and Timer), allowing developers to build highly responsive, scalable, resilient, distributed agentic and services-based applications.

Relation to other libraries

Other frameworks and toolkits have emerged to form an ecosystem around Akka:

There are more than 250 public projects registered on GitHub which use Akka.[20]

Publications about Akka

There are several books about Akka:

  • Akka Essentials[21]
  • Akka Code Examples
  • Akka Concurrency[22]
  • Akka in Action, Second Edition[23]
  • Akka in Action[24]
  • Effective Akka[25]
  • Composable Futures with Akka 2.0, Featuring Java, Scala and Akka Code Examples[26]

Akka also features in:

  • P. Haller's "Actors in Scala"[27]
  • N. Raychaudhuri's "Scala in Action"[28]
  • D. Wampler's "Functional Programming for Java Developers"[29]
  • A. Alexander's "Scala Cookbook"[30]
  • V. Subramaniam's "Programming Concurrency on the JVM"[31]
  • M. Bernhardt's "Reactive Web Applications"[32]

Besides many web articles that describe the commercial use of Akka,[33][34] there are also overview articles about it.[35][36]

References

  1. ^ Akka Team. "Scala Actors Introduction". Retrieved 17 September 2018.
  2. ^ Jovanovic, Vojin. "The Scala Actors Migration Guide". Archived from the original on 5 December 2013. Retrieved 13 March 2013.
  3. ^ "Scala Version History - Older versions". scala-lang.org. 2009-02-16. Archived from the original on 2013-01-04.
  4. ^ Jonas Bonér (2009-02-16). "init project setup". github.com.
  5. ^ Bonér, Jonas. "Akka Actor Kernel". scala-language@googlegroups.com. Archived from the original on 2016-03-04. Retrieved 2017-07-13.
  6. ^ Jonas Bonér (2009-07-12). "v0.5". github.com.
  7. ^ Jonas Bonér (2010-01-04). "Introducing Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors". jonasboner.com.
  8. ^ Bonér, Jonas. "Why We Are Changing the License for Akka". Retrieved 7 September 2022.
  9. ^ "Apache Software Foundation Announces New Top-Level Project Apache® Pekko™". Apache Software Foundation. 16 May 2024. Retrieved 28 October 2025.
  10. ^ "Play framework documentation: Integrating with Akka". playframework.com. Retrieved 6 June 2013.
  11. ^ "Spark project sources". github.com. Retrieved 6 June 2013.
  12. ^ "Socko Web Server". sockoweb.org. Retrieved 6 June 2013.
  13. ^ "eventsourced library". eligosource. Retrieved 6 June 2013.
  14. ^ "Gatling stress test tool". github.com. Retrieved 6 June 2013.
  15. ^ "Akka - Scalatra". scalatra.org. Retrieved 2022-10-06.
  16. ^ "Vaadin in Akka". Vaadin.com. Retrieved 26 April 2014.
  17. ^ "Apache Flink - Akka for the win !". flink.apache.org. Retrieved 2 December 2015.
  18. ^ "Apache Flink: Scala Free in One Fifteen". flink.apache.org. 22 February 2022. Retrieved 2022-04-22.
  19. ^ "Lagom - Integrating with Akka".
  20. ^ Tasharofi, Samira. "Akka actor project corpus at GitHub". cs.illinois.edu. Archived from the original on 2012-10-30. Retrieved 2013-06-06.
  21. ^ Gupta, Munish K. (2012). Akka Essentials. Packt Publishing. p. 334. ISBN 978-1849518284.
  22. ^ Wyatt, Derek (2013). Akka Concurrency. Artima. p. 521. ISBN 978-0981531663.
  23. ^ Lopez-Sancho Abraham, Francisco (2023). Akka in Action, Second Edition. Manning Publications. p. 400. ISBN 978-1617299216.
  24. ^ Roestenburg, Raymond (2013). Akka in Action. Manning Publications. p. 475. ISBN 978-1617291012.
  25. ^ Allen, Jamie (2013). Effective Akka. O'Reilly Media. p. 74. ISBN 978-1449360078.
  26. ^ Slinn, Michael (2012). Composable Futures with Akka 2.0. Micronautics Research. p. 178. ISBN 978-0984278923.
  27. ^ Haller, Philipp (2012). Actors in Scala. Artima. p. 169. ISBN 978-0981531656.
  28. ^ Raychaudhuri, Nilanjan (2013). Scala in Action. Manning Publications. p. 416. ISBN 978-1935182757.
  29. ^ Wampler, Dean (2011). Functional Programming for Java Developers. O'Reilly Media. pp. 90. ISBN 978-1449311032.
  30. ^ Alexander, Alvin (2013). Scala Cookbook. O'Reilly Media. p. 722. ISBN 978-1449339616.
  31. ^ Subramaniam, Venkat (2011). Programming Concurrency on the JVM: Mastering Synchronization, STM, and Actors. Pragmatic Bookshelf. pp. 280. ISBN 978-1934356760.
  32. ^ Bernhardt, Manuel (2016). Reactive Web Applications: Covers Play, Akka and Reactive Streams. Manning Publications. p. 328. ISBN 9781633430099.
  33. ^ Darrow, Barb (25 June 2012). "Juniper networks signs on with Scala". gigaom.com. Archived from the original on 2 June 2013. Retrieved 8 June 2013.
  34. ^ Ross, David. "Scaling the Klout API with Scala, Akka and Play". Retrieved 8 June 2013.
  35. ^ Haines, Stephen (May 8, 2013). "Open source Java projects: Akka". JavaWorld. Retrieved 2020-07-15.
  36. ^ "Java Magazin 6.13". jaxenter.de. Archived from the original on 13 August 2013. Retrieved 8 June 2013.

External links

Wikipedia

Dieser Text basiert auf dem Artikel Akka (toolkit) aus der freien Enzyklopädie Wikipedia und steht unter der Lizenz Creative Commons CC-BY-SA 3.0 Unported. Eine Liste der Autoren ist in der Wikipedia verfügbar.

Akka auf jobtic.com

Backend

Experten finden

jobtic.com verbindet IT-Freiberufler, Selbstständige, Consultants, Projektanbieter, IT-Dienstleister und Unternehmen in einer zentralen IT-Projektbörse für den deutschsprachigen Markt. Die Plattform unterstützt die Suche nach Akka Freelancern, Akka Projekten, Contracting-Einsätzen, Remote-Projekten, IT-Jobs, Interim-Rollen, technischen Experten und spezialisierten Beratern.

Chancen entdecken

Freelancer profitieren von einer professionellen Präsentation ihrer Expertise im Bereich Akka und erhalten Zugriff auf aktuelle Projektangebote, Projektanfragen und neue Karrierechancen im IT-Freelancer-Markt. Durch moderne Such- und Filterfunktionen lassen sich passende Projekte, Auftraggeber, Recruiter und Kontakte schnell identifizieren.

Wissen einordnen

Neben der Projekt- und Expertenplattform bietet jobtic.com umfangreiche Informationen, Hintergründe und Wiki-Inhalte rund um Akka. Dazu gehören Grundlagen, Definitionen, Einsatzbereiche, Entwicklungen, Versionen, Methoden, technische Zusammenhänge, Best Practices und aktuelle Marktinformationen zu Akka.

Vernetzung stärken

Unsere jobtic-Übersicht zu Akka kombiniert Wissensdatenbank, Projektbörse, Freelancer-Verzeichnis, Experten-Suche und Projektmarkt in einer zentralen Plattform. Besucher finden hier sowohl Informationen zu Akka als auch passende Freelancer, Berater, Entwickler, Consultants, Administratoren, Support-Spezialisten und aktuelle IT-Projekte mit Bezug zu Akka.

Kontakte aufbauen

jobtic.com unterstützt Freelancer und Unternehmen dabei, schneller passende Projekte, Experten und Geschäftskontakte im Bereich Akka zu finden. Egal ob Projektakquise, Expertenvermittlung, Freelancer-Suche, Contracting, IT-Consulting oder spezialisierte Projektbesetzung - jobtic.com bietet die passende Plattform für den modernen IT-Projektmarkt.

Zentral vernetzen

Wer nach Akka Freelancern, Akka Experten, Akka Projekten, Akka Beratern, Akka Consulting, Akka Contracting, Akka Projektbörse, Akka Freelancer-Profilen oder aktuellen Entwicklungen rund um Akka sucht, findet auf jobtic.com eine zentrale Anlaufstelle für Wissen, Projekte und professionelle Vernetzung im IT-Umfeld.

Passende Projekte zu Akka

Mehr Projekte

Projekte veröffentlichen

Unternehmen können Projekte mit Anforderungen, Laufzeiten, Technologien, Einsatzorten, Remote-Anteilen, Budgetrahmen und Projektbeschreibungen veröffentlichen. Gleichzeitig ermöglicht jobtic.com die gezielte Suche nach verfügbaren Akka Spezialisten mit passenden Erfahrungen, Branchenkenntnissen und technischen Fähigkeiten.

Aktuell sind keine sichtbaren Projekte verfügbar.