Actor model Novotný Marek Svata Bohuslav Lhotan Petr.

Slides:



Advertisements
Podobné prezentace
Stručný úvod do UML.
Advertisements

Přednáška č. 1 Úvod, Historie zpracování dat, Základní pojmy
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Přednáška č. 5 Proces návrhu databáze
Ondřej Andrš Systémy CAD I. Základní informace  Autor: Ing. Ondřej Andrš  Školitel: doc. RNDr. Tomáš Březina, CSc.  Název tématu studia: Optimalizace.
Čtvrté cvičení Objektové programování Objektový model v Javě
Komunikace v DS Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Základy informatiky Internet Ing. Roman Danel, Ph.D. Institut ekonomiky a systémů řízení Hornicko – geologická fakulta.
Přínosy a druhy počítačových sítí. Jednou z nejvýznamnějších technologií používaných v oblasti výpočetních systémů jsou již řadu let počítačové sítě.
Databáze Jiří Kalousek.
Informatika I Informatika pro 1. ročník 4 letého gymnázia
13AMP 9. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled ADA ADA Java Java.
Architektura databází Ing. Dagmar Vítková. Centrální architektura V této architektuře jsou data i SŘBD v centrálním počítači. Tato architektura je typická.
Seminář C cvičení STL, Trolltech Ing. Jan Mikulka.
Protokol TCP/IP a OSI model
Aplikace VT v hospodářské praxi internetové technologie Ing. Roman Danel, Ph.D. VŠB – TU Ostrava.
CZ.1.07/1.4.00/ VY_32_INOVACE_169_IT 9 Výukový materiál zpracovaný v rámci projektu Vzdělávací oblast: Informační a komunikační technologie Předmět:Informatika.
Tomáš Frydrych. Úvod Článek se zabývá znalostmi v asynchronních distribuovaných systémech Autoři představují nové pojetí definice souběžné znalosti (concurrent.
Tento výukový materiál vznikl v rámci Operačního programu Vzdělávání pro konkurenceschopnost Číslo projektu: CZ.1.07/1.5.00/ Číslo materiálu: VY_32_INOVACE_PSK-3-06.
Metainformační systém založený na XML Autor: Josef Mikloš Vedoucí práce: Ing. Jan Růžička, Ph.D. V/2004.
Informatika pro ekonomy II přednáška 10
Modelování a simulace MAS_02
Dokumentace objektů a zveřejnění funkcí
Programové vybavení počítače
OSNOVA: a) Úvod do OOPb) Třídy bez metod c) Třídy s metodamid) Konstruktory a destruktory e) Metody constf) Knihovní třídy g) Třídy ve tříděh) Přetížení.
Od zadání úlohy k programu Výpočetní systémy I 8. přednáška.
BIS Firewall Roman Danel VŠB – TU Ostrava.
Petriho sítě.
Úvod do JavaScriptu JavaScript je p JavaScript je programovací jazyk, který se používá na webových stránkách. JavaScript je typu KLIENT - KLIENT To znamená,
CZ.1.07/1.4.00/ VY_32_INOVACE_168_IT 9 Výukový materiál zpracovaný v rámci projektu Vzdělávací oblast: Informační a komunikační technologie Předmět:Informatika.
uložené procedury (stored procedures) triggery, sekvence, pohledy, funkce, parametrické dotazy (prepared statements) komplexní agregace a SQL dotazy jiné.
DATABÁZOVÉ SYSTÉMY. 2 DATABÁZOVÝ SYSTÉM SYSTÉM ŘÍZENÍ BÁZE DAT (SŘBD) PROGRAM KTERÝ ORGANIZUJE A UDRŽUJE NASHROMÁŽDĚNÉ INFORMACE DATABÁZOVÁ APLIKACE PROGRAM.
Filtrace web stránek s využitím profilu uživatele Petr Doskočil
Internet ale velmi výrazně slouží i pro komunikaci, přičemž jednoznačně nejpoužívanějším komunikačním prvkem je . Význam slova lze přeložit.
Srovnání Petriho sítí a HDA David Ježek. Vícedimensionální automaty Klasické automaty –nemají metodu jak vyjádřit „pravou“ souběžnost událostí A, B 0.
Úvod do PHP IZI 228.
Počítače a programování 1 7.přednáška. Základy Pole ve třídách a metodách Pole Arrays.
Výrok „Vypadá to, že jsme narazili na hranici toho, čeho je možné dosáhnout s počítačovými technologiemi. Člověk by si ale měl dávat pozor na takováto.
Internetové protokoly Autor: Milan Bílek. Internet Internet je celosvětová systém propojených počítačových sítí. Počítače mezi sebou komunikují pomocí.
Programování POCSI. Programovani/POCSI2 Základní pojmy Akce - děj nad objekty, mající začátek a konec, a mající přesně definovaný účinek. Příkaz - popis.
Distribuovaná simulace pomocí OOPN Ivan Schwarz. Motivace Význam distribuovaných aplikací Nutnost nástroje pro modelování, simulaci a prototypování distribuovaných.
14. června 2004Michal Ševčenko Architektura softwarového systému DYNAST Michal Ševčenko VIC ČVUT.
Směrování -RIP. 2 Základy směrování  Předpoklady:  Mějme směrovač X  Směrovač nemůže znát topologii celé sítě  X potřebuje určit směrovač pro přístup.
Komunikace v DS Přednášky z distribuovaných systémů Ing. Jiří Ledvina, CSc.
Elektronický podpis Ochrana Dat Jan Renner
České vysoké učení technické Fakulta elektrotechnická Datové typy, výrazy vstup, výstup Jazyk JAVA A0B36PRI - PROGRAMOVÁN Í v1.02.
Elektronické podatelny právo a praxe ISSS Hradec Králové Jan Hobza
Linková úroveň Úvod do počítačových sítí. 2 Problémy při návrhu linkové úrovně Služby poskytované síťové úrovni Zpracování rámců Kontrola chyb Řízení.
Multimediální přenosy v IP sítích Libor Suchý Prezentace diplomové práce.
JavaScript úvod. Jazyky webového vývojáře Dynamická stránka  aktivně mění svůj obsah v reakci na činnost uživatele  zpracování na straně serveru (PHP,
Vrstvy ISO/OSI  Dvě skupiny vrstev  orientované na přenos  fyzická vrstva  linková vrstva  síťová  orientované na aplikace  relační vrstva  prezentační.
Geografické informační systémy pojetí, definice, součásti
Číslo projektu: CZ.1.07/1.4.00/ Název DUM: Programy pro komunikaci Číslo DUM: III/2/VT/2/2/35 Vzdělávací předmět: Výpočetní technika Tematická oblast:
Počítačová bezpečnostPočítačová bezpečnost -je obor informatiky, který se zabývá zabezpečením informací v počítačích (odhalení a zmenšení rizik spojených.
Vývojová prostředí Objektově Orientované Programování OB21-OP-EL-KON-DOL-M Orbis pictus 21. století.
XML a datový standard Zdeněk Jirkovec Softwarové Aplikace a systémy.
NÁZEV ŠKOLY:SOŠ Net Office, spol. s r.o. Orlová Lutyně
Dobývání znalostí z databází znalosti
Multiprotocol Label Switching (MPLS)
PB169 – Operační systémy a sítě
Operační systémy 9. Spolupráce mezi procesy
Číslo projektu: CZ.1.07/1.4.00/ Název DUM: Programy pro komunikaci
TNPW1 JavaScript Ing. Jiří Štěpánek.
Informatika pro ekonomy přednáška 8
Ing. Milan Houška KOSA PEF ČZU v Praze
METODOLOGIE PROJEKTOVÁNÍ
Přednášky z distribuovaných systémů
NÁZEV ŠKOLY: S0Š Net Office, spol. s r.o, Orlová Lutyně
Přednášky z Distribuovaných systémů
Monitor Object 1.
Transkript prezentace:

Actor model Novotný Marek Svata Bohuslav Lhotan Petr

O čem to bude Úvod - Historie - Modely předcházející Actor modelu - Základy Actor modelu Formální systémy Využití Actor modelu Bob1 Bob2 Bob3 Petr 1 Petr 2 Petr 3 2

Historie r.1973 Carl Hewitt, Peter Bishop a Richard Steiger publikace návrhu r dostává softwarovou podobu na MIT (Massachusetts Institute of Technology)Massachusetts Institute of Technology Inspirace ve Fyzikálních zákonech Ovlivněný programovacími jazyky Lisp, Simula, a jednou z prvních verzí Smalltalku Vytvářen s vidinou „možnst paralelního zpracovávání výpočtů tísícovkami mikroprocesorů“ 3

Předcházející modely Lambda Calculus - pro matematické učely (definice funkcí, rekurze) Simula (1. OOP jazyk) - objekty, třídy, metody, garbage collection Smalltalk - přebírá od Simuly - primitivní datové typy jako objekty Petri nets 4

Základy Actor modelu Přebírá filozofii „Všechno je Actor“ podobně jako u OOP „Všechno je Objekt“ Actor je „výpočetní“ entita, která může jako odpověď na přijatou zprávu - posílat určitý počet zprávy ostatním Actorům - vytvářet určitý počet nových Actorů - stanovit reakci která se má použít při příští přijaté zprávě Není žádná sekvence podle které se to uskutečňuje. Komunikace probíhá asynchronně. Souběžné „provádění“ během komunikování a dynamického vytváření Actorů. 5

Formální systémy Operational semantics - pro programovací jazyky popisuje jak jsou programy interpretovány jako sekvence výpočetních operací Laws for Actor systems Denotational semantics - přístup k formalizování významu programovacích jazyků vytvářením matematických objektů, které vyjadřují význam výrazů z jazyků. - počítačový program jako funkce, která „mapuje“ vstup na výstup Transition semantics 6

Využití Actor modelu Actor model může být používán jako framework pro modelování a pochopení konkurenčních systémů. Elektronická pošta - Actor je ový účet - Adresa je ová adresa Webové služby se SOAP Objekty se „zámky“ (např. Java,C#) kontrolující přístup pomocí vláken k objektu. Synchronizační mechanismus. Matematické modely 7

Komunikace Vychází z paketových sítí Přímá - Funguje bez bufferu / enviroment buffer Asynchronní - Nevyžaduje handshake Lokální

Komunikace Podobnost s IP pakety Actors mají adresy Adresy lze vkládat do vytvářených Actors Adresy posílány ve zprávách Odpověď je přímá nebo skrze prostředníka (resumption)

Komunikace Podobnost s IP pakety Pseudo packet switching zprávy mohou putovat různými cestami při neuspěchu doručení je zpráva zaslána znovu není zajištěno pořadí zpráv (přijaty v jiném než odeslány)

Komunikace Lokálnost Významná vlastnost actor modelu Actor může posílat zprávy pouze na známé adresy : – vložené při jeho vytvoření – zná ze zpracování předchozích zpráv – které přijal ve zprávě – adresy Actors, které sám vytvořil

Komunikace zpráva může upravovat chování příjemce může být využit pipelining zpracovávání zpráv Variabilní topologie vytváření Actors adresy ve zprávách Bezpečnost Adresu Actora lze odvodit šifrování // dodatečné úpravy + unbounded nondeterminism

Příklad PING PONG Definování zpráv posílaných aktéry case object Ping case object Pong case object Stop

Ping Pong V š e potřebn é v bal í čku scala.actors import scala.actors.Actor import scala.actors.Actor._

Ping Pong

object pingpong extends Application { val pong = new Pong val ping = new Ping(100000, pong) ping.start pong.start }

Ping Pong $ scalac pingpong.scala $ scala -cp. examples.actors.pingpong Pong: ping 0 Ping: pong Pong: ping 1000 Ping: pong Pong: ping Ping: stop Pong: stop

Testy výkonnosti

Zdroje al.html d.pdf