Aktorový model, čo stiera rozdiely medzi distribuovanými a paralelnými systémami implementovaný v technológii Akka na jazykoch Java alebo Scala.
Typed Akka a Java 17
Prezentácia
- Slajdy k aktorovému modelu a Akka Typed. Príklady sú v jazyku Java, s použitím štýlu Object-Oriented, pre verziu Akka 2.6 a Java 17 (november 2022)
Videá a kód
Videá sú dostupné cez Microsoft Stream v sieti UPJŠ. (november 2022)
Rok 2023
- Video 1/2. Úvod do aktorového modelu. Implementácia aktorov. Komunikácia medzi aktormi. Rozdeľovanie roboty medzi aktorov. Message Adapter pre dodržanie typov správ. (november 2023)
- Video 2/2. Komunikácia od replík ku koordinátorovi. Failover: zlyhávanie aktorov a supervízia. Spawnovanie viacerých aktorov pre škálovanie. V druhej polovici videa sa rieši Akka Cluster a distribuovaní aktori. (november 2023)
Rok 2022
- Video 1 / 2 (1h 30m). Úvod do aktorového modelu. Implementácia aktorov. Komunikácia medzi aktormi. Ask pattern. Rozdeľovanie roboty medzi aktorov. Message Adapter pre dodržanie typov správ. (november 2022)
- Video 2 / 2 (1h 30m) Komunikácia od replík ku koordinátorovi. Failover: zlyhávanie aktorov a supervízia. Spawnovanie viacerých aktorov pre škálovanie. Logovanie a debugging. (november 2022)
- Zdrojové kódy k videám — repozitár na GitHub.com (november 2022)
Kód
- Celý ukážkový projekt vrátane histórie komitov pre Akka Typed 2.6, Java 17, OOP prístup. Obsahuje podporu pre logovanie a konfiguráciu a implementáciu Poison Pill. (november 2022)
Distribuovaná Akka a Akka Cluster
Distribuovaní aktori v Akka clusteri na príklade delenia roboty
Aktori bežiaci na samostatných uzloch. Registrácia aktorov cez Receptionist
. Serializácia správ pomocou Java serializácie. Spúšťanie aktorového systému v rolách. Ukážka routera typu group, ktorý autodetekuje aktorov rovnakého druhu cez recepčného.
- GitHub repo
novotnyr/akka-cluster-router-group
Celý ukážkový projekt vrátane histórie komitov.
Distribuovaná Akka a Akka Cluster
Distribuovaná Akka v sieti. Výstavba Akka clustera. Komunikácia aktorov v distribuovanom prostredí. Odhaľovanie aktorov cez Receptionist.
- Video (2h)
- kód GitHub repo
novotnyr/akka-iot-2022
. Celý ukážkový projekt vrátane histórie komitov s ukážkami distribuovanej aplikácie bežiacej v rámci Akka Clustera.
Typed Akka a Java 8 (2020)
Prezentácia
- Slajdy k aktorovému modelu a Akka Typed. Príklady sú v jazyku Java, s použitím štýlu Object-Oriented, pre verziu Akka 2.6 (október 2020)
Videá
Videá sú dostupné cez Microsoft Stream v sieti UPJŠ. (október 2020)
Úvod
Videá demonštrujú úvod k aktorovému modelu a Akka Typed.
- Video 1 / 2 (1h 30m). Úvod do aktorového modelu. Implementácia aktorov. Komunikácia medzi aktormi. Ask pattern. Rozdeľovanie roboty medzi aktorov. Message Adapter pre dodržanie typov správ.
- Video 2 / 2 (1h 20m). Komunikácia od replík ku koordinátorovi. Failover: zlyhávanie aktorov a supervízia. Spawnovanie viacerých aktorov pre škálovanie. Logovanie a debugging.
Kód
- Celý ukážkový projekt vrátane histórie komitov pre Akka Typed 2.6, Java 8, OOP prístup. Obsahuje podporu pre logovanie a konfiguráciu. (október 2020)
Distribuovaná Akka a Akka Cluster
- Video (1h 40m). Distribuovaná Akka v sieti. Výstavba Akka clustera. Komunikácia aktovo v distribuovanom prostredí. Odhaľovanie aktorov cez Receptionist.
Kód
- GitHub repo
novotnyr/akka-iot-demo
s ukážkami distribuovanej aplikácie bežiacej v rámci Akka Clustera.
Klasická Akka – Akka Classic/Untyped (2018)
Prezentácia
- Slajdy k Akka a aktorovému modelu (jeseň 2018)
Kód
Aktuálny kód Akka 2.5/Java a AbstractActor
Repozitár novotnyr/akka-wordfrequencies-2018
obsahuje príklad aktorového projektu pre počítanie frekvencií slov vo vete.
Implementovaný je pre framework Akka 2.5 a jazyk Java.
- tag
step1
reprezentuje iniciálny kód pre cvičenie - branch
master
obsahuje ukážku death watch stratégie pre sledovanie workerov - branch
message-tracking
obsahuje ukážku stratégie ukončenia aktorového systému s počítaním prijatých správ
Akka 2.4 - Untyped Actors a Java 8 (2017)
Starší kód pre Akka 2.4/Java a UntypedActor
Repozitár novotnyr/akka-wordfrequencies-2017
obsahuje príklad založený na UntypedActor
a staršom netypovanom API pre Akku 2.4 a staršiu a jazyk Java.
- branch
master
pre ukážku s deathwatch - branch
message-tracking
pre ukážku s počítaním správ - tag
brownfield
— iniciálny kód pre cvičenie