Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms
|
|
- Rebeka Illés
- 6 évvel ezelőtt
- Látták:
Átírás
1 Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 10. rész: Objektumalapú elosztott rendszerek május 24.
2 Tartalomjegyzék Fejezet 01: Bevezetés 02: Architektúrák 03: Folyamatok 04: Kommunikáció 05: Elnevezési rendszerek 06: Szinkronizáció 07: Konzisztencia & replikáció 08: Hibatűrés 10: Objektumalapú elosztott rendszerek 11: Elosztott fájlrendszerek 12: Elosztott webalapú rendszerek Maarten van Steen, Kitlei Róbert Elosztott rendszerek 2 / 24
3 Távoli elosztott objektumok Objektum: műveleteket és adatokat zár egységbe (enkapszuláció) A műveleteket metódusok implementálják, ezeket interfészekbe csoportosítjuk Az objektumokat csak az interfészükön keresztül érhetik el a kliensek Az objektumokat objektumszerverek tárolják A kliensoldali helyettes (proxy) megvalósítja az interfészt A szerveroldalon a váz (skeleton) kezeli a beérkező kéréseket Client invokes a method Client Client OS Client machine Proxy Same interface as object Skeleton invokes same method at object Server machine Server Skeleton Server OS Object State Method Interface Network Marshalled invocation is passed across network Maarten van Steen, Kitlei Róbert Elosztott rendszerek 3 / 24
4 Távoli elosztott objektumok Objektumok létrehozás ideje alapján Fordítási időben létrejövő objektumok: A helyettest és a vázat a fordítóprogram készíti el, összeszerkeszti a kliens és a szerver kódjával. Nem cserélhető le, miután létrejött, és a klienssel/szerverrel azonos a programozási nyelve. Futási időben létrejövő objektumok: Tetszőleges nyelven valósítható meg, de objektumadapterre van szükség a szerveroldalon a használatához. Objektumok élettartamuk alapján Átmeneti (tranziens) objektum: Élettartama csak addig tart, amíg be van töltve a szerverbe. Ha a szerver kilép, az objektum is megsemmisül. Tartós (perzisztens) objektum: Az objektum állapotát és kódját lemezre írjuk, így a szerver kilépése után is megmarad. Ha a szerver nem fut, az objektum passzív; amikor a szerver elindul, betöltéssel aktivizálható. Maarten van Steen, Kitlei Róbert Elosztott rendszerek 4 / 24
5 Példa: Enterprise Java Beans (EJB) Az objektumokat alkalmazásszerverek (pl. GlassFish) tárolják, amelyek lehetővé teszik az objektumok különböző módokon való elérését. Container Server EJB EJBEJB Services JMS JNDI JDBC RMI Server kernel Local OS Network Maarten van Steen, Kitlei Róbert Elosztott rendszerek 5 / 24
6 Példa: Enterprise Java Beans (EJB) EJB-k fajtái Stateless session bean: Tranziens objektum, egyszer hívják meg, miután elvégezte a feladatát, megszűnik. Példa: egy SQL lekérdezés végrehajtása, és az eredmény átadása a kliensnek. Stateful session bean: Tranziens objektum, de a klienssel egy munkameneten (session) keresztül tartja a kapcsolatot, ezalatt állapotot is tart fenn. Példa: bevásárlókosár. Entity bean: Perzisztens, állapottal rendelkező objektum, amely több munkamenetet is ki tud szolgálni. Példa: olyan objektum, amely az utolsó néhány kapcsolódó kliensről tárol adatokat. Message-driven bean: Különböző fajta üzenetekre reagálni képes objektum. A publish/subscribe kommunikációs modell szerint működik. Maarten van Steen, Kitlei Róbert Elosztott rendszerek 6 / 24
7 Globe elosztott objektumok Általában a távoli objektumok nem elosztottak: az állapotukat egy gép tárolja. A Globe rendszerben az objektumok fizikailag több gépen helyezkednek el: elosztott közös objektum (distributed shared object, DSO). Distributed shared object Local object Network Process Interface Maarten van Steen, Kitlei Róbert Elosztott rendszerek 7 / 24
8 Globe elosztott objektumok Az elosztottság támogatásához belső architektúra szükséges, és célszerű, ha ez független attól, hogy a DSO külső felülete milyen szolgáltatásokat nyújt. A replikációkezelő alobjektum vezérli, hogy hogyan és mikor kell a lokális szemantikus alobjektumot meghívni. Replication subobject Communication subobject Communication with other local objects Control subobject Same interface as implemented by semantics subobject Semantics subobject Maarten van Steen, Kitlei Róbert Elosztott rendszerek 8 / 24
9 Folyamatok: Objektumszerverek A rendszer részei a kiszolgálók, a vázak és az adapterek. A kiszolgálót (servant), amely az objektum működését biztosítja, több paradigma szerint lehet implementálni: Függvények gyűjteménye, amelyek adatbázistáblákat, rekordokat stb. manipulálnak (pl. C vagy COBOL nyelven) Osztályok (pl. Java vagy C++ nyelven) A váz (skeleton) a szerveroldali hálózati kapcsolatokat kezeli: Kicsomagolja a beérkező kéréseket, lokálisan meghívja az objektumot, becsomagolja és visszaküldi a választ Az interfész specifikációja alapján hozzák létre Az objektumadapter feladata objektumok egy csoportjának kezelése: Elsőként fogadja a kéréseket, és azonosítja a releváns kiszolgálót Aktivációs házirend (policy) szerint aktiválja a megfelelő vázat Az adapter generálja az objektumhivatkozásokat Maarten van Steen, Kitlei Róbert Elosztott rendszerek 9 / 24
10 Folyamatok: Objektumszerverek Az objektumszerverek vezérlik a tartalmazott objektumok létrehozását. Server with three objects Server machine Object's stub (skeleton) Object adapter Object adapter Request demultiplexer Local OS Maarten van Steen, Kitlei Róbert Elosztott rendszerek 10 / 24
11 Példa: Ice Az Ice (Internet Communications Engine) objektumorientált köztesréteg, szolgáltatásai elérhetőek a legnépszerűbb nyelveken. Az aktivációs házirend megjelenik a köztesréteg szintjén: az adapter properties adattagján át lehet módosítani. Ez segíti a rendszer egyszerű kezelhetőségét. main(int argc, char* argv[]) { Ice::Communicator ic = Ice::initialize(argc, argv); Ice::ObjectAdapter adapter = ic->createobjectadapterwithendpoints("a","tcp -p 2000"); Ice::Object object = new MyObject; adapter->add(object, objectid); adapter->activate(); } ic->waitforshutdown(); Maarten van Steen, Kitlei Róbert Elosztott rendszerek 11 / 24
12 Kliens csatlakoztatása objektumhoz Objektumhivatkozás Ha egy kliens birtokol egy referenciát egy objektumra, képes hozzá csatlakozni (bind): A hivatkozás előírja, melyik szerveren, melyik objektumot, milyen kommunikációs protokoll szerint lehet rajta keresztül elérni A hivatkozáshoz kód tartozik, ezt a konkrét objektum eléréséhez felparaméterezve kapjuk a helyettest Kétfajta csatlakozás Implicit: Magán a hivatkozott objektumon hívjuk meg a műveleteket Explicit: A kliens kódjában a csatlakozás explicit megjelenik Maarten van Steen, Kitlei Róbert Elosztott rendszerek 12 / 24
13 Kliens-objektum csatlakozás: implicit/explicit // implicit Distr_object* obj_ref; obj_ref =...; obj_ref->do_something(); // explicit Distr_object* obj_ref; Local_object* obj_ptr; obj_ref =...; obj_ptr = bind(obj_ref); obj_ptr->do_something(); A hivatkozás tartalmazhat egy URL-t, ahonnan az implementáció letölthető Protokollban rögzíthető, hogyan kell betölteni és példányosítani a letöltött kódot A szerver és az objektum ismerete elegendő lehet a távoli metódushívás megkezdéséhez Objektumhivatkozások paraméterként is átadhatóak, amik RPC esetében bonyodalmakat okoznak Maarten van Steen, Kitlei Róbert Elosztott rendszerek 13 / 24
14 Távoli metódushívás (Remote Method Invocation, RMI) Tegyük fel, hogy a helyettes és a váz rendelkezésre áll a kliensnél/szervernél. 1 A kliens meghívja a helyettest 2 A helyettes becsomagolja a hívás adatait, és elküldi a szervernek 3 A szerver biztosítja, hogy a hivatkozott objektum aktív: Külön folyamatot hozhat létre, amely tárolja az objektumot Betöltheti az objektumot a szerverfolyamatba... 4 Az objektum váza kicsomagolja a kérést, és a metódus meghívódik 5 Ha paraméterként objektumhivatkozást kaptunk, ezt szintén távoli metódushívással éri el a szerver; ebben a szerver kliensként vesz részt 6 A választ hasonló úton küldjük vissza, a helyettes kicsomagolja, és visszatér vele a klienshez Maarten van Steen, Kitlei Róbert Elosztott rendszerek 14 / 24
15 RMI: Paraméterátadás Hivatkozás szerinti paraméterátadás: sokkal egyszerűbb, mint RPC esetén. A szerver egyszerűen távoli metódushívással éri el az objektumot Ha már nincsen szüksége rá, megszünteti a csatolást (unbind) Érték szerinti paraméterátadás: RMI esetén ez kevésbé kényelmes. Szerializálni kell az objektumot Az állapotát A metódusait, vagy hivatkozást olyan helyre, ahol elérhető az implementációjuk Amikor a szerver kicsomagolja az objektumot, ezzel másolat készül az eredetiről Ez az automatikus másolódás többféle problémát okoz, pl. néha túl átlátszó : könnyen több objektumról készíthetünk másolatot, mint amennyiről szeretnénk Maarten van Steen, Kitlei Róbert Elosztott rendszerek 15 / 24
16 RMI: Paraméterátadás Machine A Machine B Local reference L1 Local object O1 Remote reference R1 Remote object O2 Client code with RMI to server at C (proxy) New local reference Copy of O1 Remote invocation with L1 and R1 as parameters Machine C Copy of R1 to O2 Server code (method implementation) A rendszerszintű objektumhivatkozások általában a szerver címét, adapterének portját és az objektum lokális azonosítóját tartalmazzák. Néha ezekhez további információk is járulnak, pl. a kliens és szerver között használt protokoll (TCP, UDP, SOAP stb.) Maarten van Steen, Kitlei Róbert Elosztott rendszerek 16 / 24
17 RMI: Paraméterátadás Machine A Machine B Local reference L1 Local object O1 Remote reference R1 Remote object O2 Client code with RMI to server at C (proxy) New local reference Copy of O1 Remote invocation with L1 and R1 as parameters Machine C Copy of R1 to O2 Server code (method implementation) Mivel a helyettesnek mindenféleképpen ismernie kell a hivatkozáshoz szükséges adatokat (cím, port, lokális ID), felhasználhatjuk a helyettest magát mint távoli hivatkozást. Ez különösen előnyös, ha a helyettes letölthető (pl. a Java esetében igen). Maarten van Steen, Kitlei Róbert Elosztott rendszerek 17 / 24
18 Objektumalapú üzenetküldés A kliens az üzenetekre várás közben lehet aktív vagy passzív. 1. Call by the application 1. Call by the application Client proxy Client RTS Client proxy Client RTS Client application Callback interface Client application Polling interface 4. Call by the RTS 2. Request to server 2. Request to server 3. Response from server 4. Call by the application 3. Response from server Maarten van Steen, Kitlei Róbert Elosztott rendszerek 18 / 24
19 Objektumhivatkozások IIOP 1 : távoli objektumhivatkozásokat kezelő protokoll CORBA 2 : Objektumalapú köztesréteg, IIOP-t használ Az alábbi ábrán a CORBA objektumhivatkozásának szerkezete látható. Tagged Profile Interoperable Object Reference (IOR) Repository identifier Profile ID Profile IIOP version Host Port Object key Components Adapter identifier Object identifier Other serverspecific information 1 Internet Inter-ORB Protocol 2 Common Object Request Broker Architecture Maarten van Steen, Kitlei Róbert Elosztott rendszerek 19 / 24
20 Objektumhivatkozások Különböző objektumkezelő rendszerekben a hivatkozások szerkezete nagymértékben eltérhet. A rendszerek között átjárók (gateway) biztosíthatják a hivatkozások konvertálását. Object server Interoperable references (Half) gateway Object system A Object system B Maarten van Steen, Kitlei Róbert Elosztott rendszerek 20 / 24
21 Replikáció és konzisztencia Az objektumok a belépő konzisztencia megvalósításának természetesen adódó eszközei: Az adatok egységbe vannak zárva, és szinkronizációs változóval (zárral) védjük őket A szinkronizációs változókat soros konzisztencia szerint érjük el (az értékek beállítása atomi lépés) Az adatokat kezelő műveletek összessége pont az objektum interfésze lesz Replikáció Mit tegyünk, ha az objektumot replikálni kell? A replikált objektumokon a műveletek végrehajtásának sorrendjének azonosnak kell lennie. Maarten van Steen, Kitlei Róbert Elosztott rendszerek 21 / 24
22 Replikált objektumok Nemcsak a kéréseknek kell sorrendben beérkezniük a replikátumokhoz; a vonatkozó szálak ütemezésének determinisztikusnak kell lennie. Egyszerű megoldás lehetne, ha teljesen sorosítva (egyetlen szálon) hajtanánk végre a kéréseket, de ez túl költséges. Computer 1 Computer 2 Object Thread scheduler T 1 Deterministic 1 T 1 2 T 2 1 T 2 2 Threads thread scheduling Threads Middleware Totally ordered requests Middleware Local OS Local OS Unordered requests Unordered requests Maarten van Steen, Kitlei Róbert Elosztott rendszerek 22 / 24
23 Replikált hívások Aktív replikáció: ha a replikált objektum hívás során maga is meghív más objektumot, az a kérést többszörörözve kapná meg. Client replicates invocation request B1 Object receives the same invocation three times A B2 C All replicas see the same invocation B3 Replicated object Maarten van Steen, Kitlei Róbert Elosztott rendszerek 23 / 24
24 Replikált hívások Megoldás: mind a szerver-, mind a kliensobjektumon válasszunk koordinátort, és csak a koordinátorok küldhessenek kéréseket és válaszokat. Coordinator of object B Coordinator of object C Client replicates invocation request B1 Result B1 C1 C1 A B2 A B2 C2 C2 B3 B3 Result (a) (b) Maarten van Steen, Kitlei Róbert Elosztott rendszerek 24 / 24
Kommunikáció. Távoli eljáráshívás. RPC kommunikáció menete DCE RPC (1) RPC - paraméterátadás. 3. előadás Protokollok. 2. rész
3. előadás Protokollok Kommunikáció 2. rész RPC (Remote Procedure Call) távoli eljáráshívás RMI (Remote Method Invocation) távoli metódushívás MOM (Message-Oriented Middleware) üzenetorientált köztesréteg
Osztott alkalmazások fejlesztési technológiái Áttekintés
Osztott alkalmazások fejlesztési technológiái Áttekintés Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Történelem - a kezdetek 2 Mainframe-ek és terminálok Minden a központi gépen fut A
Kommunikáció. 3. előadás
Kommunikáció 3. előadás Kommunikáció A és B folyamatnak meg kell egyeznie a bitek jelentésében Szabályok protokollok ISO OSI Többrétegű protokollok előnyei Kapcsolat-orientált / kapcsolat nélküli Protokollrétegek
Komponens modellek. 3. Előadás (első fele)
Komponens modellek 3. Előadás (első fele) A komponens modellek feladata Támogassa a szoftverrendszerek felépítését különböző funkcionális, logikai komponensekből, amelyek a számítógépes hálózatban különböző
S04-2 Elosztott alkalmazások készítése
S04-2 Elosztott alkalmazások készítése Tartalom 1. Többrétegű architektúra, elosztott szerveroldal 2. Kommunikációs eszközök: távolieljárás-hívás és üzenet alapú infrastruktúra (point-to-point és publish-subscribe
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 12. rész:
CORBA bevezetés. Paller Gábor 2004.10.08. Internet és mobil rendszerek menedzselése
CORBA bevezetés Paller Gábor 2004.10.08 CORBA Common Object Request Broker Architecture Az Object Management Group (OMG) felügyeli (ugyanaz, mint az UML-t) A specifikáció célja alkalmazások együttműködésének
Kommunikáció. Folyamatok közötti kommunikáció. Minden elosztott rendszer alapja
Kommunikáció Folyamatok közötti kommunikáció Minden elosztott rendszer alapja Marshalling Alap primitívek Direkt, indirekt portok Blokkolás, nem blokkolás Pufferelés Megbízhatóság RPC Az RPC jellemzői
Enterprise JavaBeans. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem. Az Enterprise JavaBeans
Enterprise JavaBeans Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans (EJB) server oldali komponens, amely Az üzleti
CORBA Áttekintés. Mi a CORBA? OMG and OMA. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék
CORBA Áttekintés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 10. 15. Mi a CORBA? osztott objektum modell szabvány, amely definiálja a komponensek közötti interface-eket definiál
DCOM Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Ficsor Lajos DCOM /1
DCOM Áttekintés Miskolci Egyetem Általános Informatikai Tanszék DCOM /1 Mi a DCOM? DCOM: Distributed Component Object Model A Microsoft osztott objektum modellje Bináris együttmÿködési szabvány és annak
Enterprise JavaBeans 1.4 platform (EJB 2.0)
Enterprise JavaBeans 1.4 platform (EJB 2.0) Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11.13. Az Enterprise JavaBeans Az Enterprise Javabeans Az Enterprise JavaBeans
Osztott rendszerek. Krizsán Zoltán 1 Ficsór Lajos 1. Webalkalmazások fejlesztése tananyag. Miskolci Egyetem. Bevezetés A múlt - történelem A jelen
Osztott rendszerek Krizsán Zoltán 1 Ficsór Lajos 1 1 Általános Informatikai Tanszék Miskolci Egyetem Webalkalmazások fejlesztése tananyag Tartalom Bevezetés A múlt - történelem A jelen Denition Distributed
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 7. rész: Konzisztencia & replikáció
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 7. rész: Konzisztencia
A SZOFTVERTECHNOLÓGIA ALAPJAI
A SZOFTVERTECHNOLÓGIA ALAPJAI Objektumorientált tervezés 8.előadás PPKE-ITK Tartalom 8.1 Objektumok és objektumosztályok 8.2 Objektumorientált tervezési folyamat 8.2.1 Rendszerkörnyezet, használati esetek
CORBA. Mi a CORBA? A CORBA felépítése
Mi a CORBA? CORBA A programok által használt objektumok nem szükségképpen korlátozódnak az operációs rendszer által a programok számára kijelölt memóriaterületre - a program címzési tartományára. Általánosabb
Tartalom. Történeti áttekintés. Történeti áttekintés 2011.03.23. Architektúra DCOM vs CORBA. Szoftvertechnológia
Tartalom D Szoftvertechnológia előadás Történeti áttekintés Architektúra D vs CORBA 2 Történeti áttekintés 1987 Dynamic Data Exchange (DDE) Windows 2.0-ban Windows alkalmazások közötti adatcsere Ma is
Osztott rendszerek (Distributed. systems) Bevezetés. Tartalom. Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék
Osztott rendszerek (Distributed systems) Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 09. 18. osztottrendszerek / 1 Tartalom Miért kellenek osztott rendszerek Egy kis
Osztott rendszerek (Distributed
Osztott rendszerek (Distributed systems) Bevezetés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2007. 09. 18. osztottrendszerek / 1 Tartalom Miért kellenek osztott rendszerek Egy kis
JAVA webes alkalmazások
JAVA webes alkalmazások Java Enterprise Edition a JEE-t egy specifikáció definiálja, ami de facto szabványnak tekinthető, egy ennek megfelelő Java EE alkalmazásszerver kezeli a telepített komponensek tranzakcióit,
A Java EE 5 plattform
A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11. 13. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési
Komponens alapú programozás Bevezetés
Komponens alapú programozás Bevezetés Ficsor Lajos Miskolci Egyetem Általános Informatikai Tanszék Ez a tananyag felhasználja a TEMPUS S_JEP-12495-97 Network Computing Chapter 8 Developing of Network Computing
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 2. rész: Architektúrák
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 2. rész: Architektúrák
Book Template Title. Author Last Name, Author First Name
Book Template Title Author Last Name, Author First Name Book Template Title Author Last Name, Author First Name I. rész - Szoftver technológia 1. fejezet - Esettanulmány Bevezetés Az alkalmazás fejlesztésére
Már megismert fogalmak áttekintése
Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése Eseménykezelési módszerek 2 Már megismert fogalmak
Osztott Objektumarchitektúrák
1. Kliens szerver architektúra Osztott Objektumarchitektúrák Dr. Tick József Jól bevált architektúra Kliens-szerver szerepek rögzítettek Szerver szolgáltatást nyújt, vagy igénybe vesz Kliens csak igénybe
Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem
A Java EE 5 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2008. 04. 17. A Java EE 5 platform A Java EE 5 plattform A J2EE 1.4 után következő verzió. Alapvető továbbfejlesztési
Osztott rendszerek, Java EE. Általános bevezető
Osztott rendszerek, Java EE Általános bevezető Osztott rendszerek Hálózati alkalmazások (java.net, java.nio, Apache Mina, stb.) Web-programozás (Servlet, JSP, JSTL, JSF, JavaFX, GWT, Struts, stb.) Webszolgáltatások
Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon
Magic xpi 4.0 vadonatúj Architektúrája Gigaspaces alapokon Mi az IMDG? Nem memóriában futó relációs adatbázis NoSQL hagyományos relációs adatbázis Más fajta adat tárolás Az összes adat RAM-ban van, osztott
Tartalom DCOM. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés. Történeti áttekintés
Tartalom D Szoftvertechnológia elıadás Architektúra D vs CORBA Példá 2 1987 Dynamic Data Exchange (DDE) Windows 2.0-ban Windows alkalmazások közötti adatcsere Ma is használatos (pl. vágólap) NetDDE NetBIOS
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2010/2011-2 félév, 11. gyakorlat (az előző 2 gyak közül az egyiken ZH volt, a másik szünet miatt elmaradt) 1 JAR fájl készítés A JAR (Java
A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem
A J2EE fejlesztési si platform (application model) 1.4 platform Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11.13. A J2EE application model A Java szabványok -
4. rész: Java Enterprise Edition bevezetı. Bakay Árpád dr. NETvisor kft (30) 385 1711 arpad.bakay@netvisor.hu
4. rész: Java Enterprise Edition bevezetı Bakay Árpád dr. NETvisor kft (30) 385 1711 arpad.bakay@netvisor.hu Hol tartunk? Projekt tervezés, követés MS Project RequisitePro Követelmények Tervezés, modellezés
Serialization. RMI működése
RMI Az RMI (Remote Method Invocation), azaz távoli metódushívás egy olyan eszköz a Java nyelvben, mely lehetővé teszi más VM-ben (Virtual Machine virtuális gép) elhelyezkedő objektumok metódusainak meghívását.
Folyamatok. 6. előadás
Folyamatok 6. előadás Folyamatok Folyamat kezelése, ütemezése folyamattábla új folyamat létrehozása átkpcsolás folyamatok elválasztása egymástól átlátszó Szál szálkezelő rendszer szálak védése egymástól
Eseménykezelés. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor.
Eseménykezelés előadás http://nik.uni-obuda.hu/sztf2 Szénási Sándor szenasi.sandor@nik.uni-obuda.hu Óbudai Egyetem,Neumann János Informatikai Kar Függvénymutatókkal Származtatással Interfészekkel Egyéb
Segédanyag: Java alkalmazások gyakorlat
Segédanyag: Java alkalmazások gyakorlat Készítette: Szabó Attila 2009/2010-2 félév, 12. gyakorlat 1 Távoli metódushívás Java-ban (RMI) Java-ban a távoli metódushívás ( Remote Method Invocation, RMI) egy
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 3. rész: Folyamatok
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 3. rész: Folyamatok
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 6. rész: Szinkronizáció
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 6. rész: Szinkronizáció
Oracle Containers for Java - j2ee alkalmazás szerver funkciók. Molnár Balázs Oracle Hungary
Oracle Containers for Java - j2ee alkalmazás szerver funkciók Molnár Balázs Oracle Hungary Mi is a J2EE? Szabványgyűjtemény Java alkalmazások számára A JavaSoft közösség alakította ki Összefogja az egyéni
Java. Java Message Service. ANTAL Margit. JMS API technológia. ANTAL Margit. Sapientia - EMTE
Sapientia - EMTE 2008 Az előadás célja Üzenetkommunikációs architektúrák JMS Példák Üzenet gyártó Szinkron üzenetfogyasztó Aszinkron üzenetfogyasztó Üzenetbab (message-driven bean) point-to-point modell:
A JGrid rendszer biztonsági architektúrája. Magyaródi Márk Juhász Zoltán Veszprémi Egyetem
A JGrid rendszer biztonsági architektúrája Magyaródi Márk Juhász Zoltán Veszprémi Egyetem A JGrid projekt Java és Jini alapú szolgáltatás orientált Grid infrastruktúra IKTA-5 089/2002 (2003-2004) Konzorcium:
Java RMI Áttekintés. A Java RMI. A Java RMI architektúrája. Ficsor Lajos. Általános Infromatikai Tanszék Miskolci Egyetem 1.
Java RMI Áttekintés Miskolci Egyetem Általános Informatikai Tanszék RMI /1 A Java RMI RPC - egy távoli eljárás hívása helyi hívásnak tÿnik RMI - hasonló mechanizmust biztosít, de objektum orientált módon:
CO C R O B R A B OMG, ORB, CORBA
CORBA OMG, ORB, CORBA OMG CORBA (Common Object Request Broker Architecture) az OMG (Object Management Group) által definiált standard, ami lehetővé teszi különböző nyelveken írt, különböző számítógépeken
11. Elosztott állománykezelés. Operációs rendszerek. Elosztott állománykezelés. Teljesítmény növelése. Az állományokra hivatkozás. Az állományok nevei
11. Elosztott állománykezelés Operációs rendszerek 11. Elosztott állománykezelés Simon Gyula Bevezetés Hivatkozás állományokra Műveletek végzése Távoli eljáráshívás Műveletek helyi átmeneti tárban A szolgáltató
UNIX: folyamatok kommunikációja
UNIX: folyamatok kommunikációja kiegészítő fóliák az előadásokhoz Mészáros Tamás http://home.mit.bme.hu/~meszaros/ Budapesti Műszaki Egyetem Méréstechnika és Információs Rendszerek Tanszék 1 A kommunikáció
5. rész: A Java EE és az Enterprise Bean réteg. Bakay Árpád dr. NETvisor kft (30)
5. rész: A Java EE és az Enterprise Bean réteg Bakay Árpád dr. NETvisor kft (30) 385 1711 arpad.bakay@netvisor.hu Java EE Komponensek családfája Java EE Komponens Üzleti logika EJB Container User interface
Programozási nyelvek Java
statikus programszerkezet Programozási nyelvek Java Kozsik Tamás előadása alapján Készítette: Nagy Krisztián 2. előadás csomag könyvtárak könyvtárak forrásfájlok bájtkódok (.java) (.class) primitív osztály
RPC Remote Procedure Call Távoli eljárás hívás
RPC Remote Procedure Call Távoli eljárás hívás Hagyományos eljáráshívás: Count = read (fd, buf, nbytes) Paraméterek átadásának a típusai: - Érték szerinti átadás - Referencia szerinti átadás - Másoló/visszatöltő
Java Business Integration szolgáltatásalapú architektúra JavaEE környezetben. Simon Géza geza.simon@sun.hu Zsemlye Tamás tamas.zsemlye@sun.
Java Business Integration szolgáltatásalapú architektúra JavaEE környezetben Simon Géza geza.simon@sun.hu Zsemlye Tamás tamas.zsemlye@sun.com Témáim: SOA architecture Webservice folyamat java WS-addressing
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 4. rész: Kommunikáció
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 4. rész: Kommunikáció
Junior Java Képzés. Tematika
Junior Java Képzés Tematika I. Szakmai törzsanyag A tematika tartalmaz algoritmuselméletet, programozási tételeket, tipikus adatfeldolgozó feladatokat, programozási nyelvi alapelemeket, technológiai ismereteket,
Szoftver Tervezési Dokumentáció. Nguyen Thai Binh
Szoftver Tervezési Dokumentáció Nguyen Thai Binh April 2010 1. fejezet Feladat Szimulációs feladat. Célja, hogy reprezentáljunk egy több komponensből álló alkalmazást, amely a megadott témakörnek megfelel,
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 1. rész: Bevezetés
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 1. rész: Bevezetés
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms. 1. rész: Bevezetés
Elosztott rendszerek: Alapelvek és paradigmák Distributed Systems: Principles and Paradigms Maarten van Steen 1 Kitlei Róbert 2 1 VU Amsterdam, Dept. Computer Science 2 ELTE Informatikai Kar 1. rész: Bevezetés
Elosztott rendszerek
Elosztott rendszerek NGM_IN005_1 Köztesréteg megoldások (middleware-ek) Middleware alapú elosztott rendszerek Magas átlátszósági fok Eltér! operációs rendszerek Modellfügg! kommunikációs mechanizmus Er!forráskezelés
Operációs rendszerek. Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok:
Operációs rendszerek MS Windows NT (2000) folyamatok Az Executive és a kernel Policy és mechanizmusok szeparálása Executive: policy - objektum kezelés Kernel: mechanizmusok: szálak ütemezése végrehajtásra
Adatbányászat és Perszonalizáció architektúra
Adatbányászat és Perszonalizáció architektúra Oracle9i Teljes e-üzleti intelligencia infrastruktúra Oracle9i Database Integrált üzleti intelligencia szerver Data Warehouse ETL OLAP Data Mining M e t a
Webes alkalmazások fejlesztése 12. fejezet. Szolgáltatás alapú kommunikáció (WCF) Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar
Eötvös Loránd Tudományegyetem Informatikai Kar Webes alkalmazások fejlesztése 12. fejezet Szolgáltatás alapú kommunikáció (WCF) Giachetta Roberto A jegyzet az ELTE Informatikai Karának 2016. évi jegyzetpályázatának
54 481 01 1000 00 00 CAD-CAM
Az Országos Képzési Jegyzékről és az Országos Képzési Jegyzékbe történő felvétel és törlés eljárási rendjéről szóló 133/2010. (IV. 22.) Korm. rendelet alapján. Szakképesítés, szakképesítés-elágazás, rész-szakképesítés,
SIP. Jelzés a telefóniában. Session Initiation Protocol
SIP Jelzés a telefóniában Session Initiation Protocol 1 Telefon hívás létrehozása 2 Jelzés és hálózat terhelés 3 Jelzés sík és jelzés típusok 4 TDM - CAS Channel Associated Signaling 5 CCS - Signaling
A TANTÁRGY ADATLAPJA
A TANTÁRGY ADATLAPJA 1. A képzési program adatai 1.1 Felsőoktatási intézmény Babeș Bolyai Tudományegyetem 1.2 Kar Matematika és Informatika Kar 1.3 Intézet Magyar Matematika és Informatika Intézet 1.4
Fábián Zoltán Hálózatok elmélet
Fábián Zoltán Hálózatok elmélet Network Basic Input/Output System Helyi hálózatokon keresztül számítógépek Név alapján azonosítják egymást Szállítási protokollokra épül NetBeui fölött (pl. Win 9x Netbios
webalkalmazások fejlesztése elosztott alapon
1 Nagy teljesítményű és magas rendelkezésreállású webalkalmazások fejlesztése elosztott alapon Nagy Péter Termékmenedzser Agenda Java alkalmazás grid Coherence Topológiák Architektúrák
Bevezető. Servlet alapgondolatok
A Java servlet technológia Fabók Zsolt Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2008. 03. 06. Servlet Bevezető Igény a dinamikus WEB tartalmakra Előzmény: CGI Sokáig
Java RMI Áttekintés. Miskolci Egyetem Általános Informatikai Tanszék. Utolsó módosítás: Ficsor Lajos. javarmi / 1
Java RMI Áttekintés Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2008. 03. 05. javarmi / 1 A Java RMI RPC - egy távoli eljárás hívása helyi hívásnak tűnik RMI - hasonló mechanizmust
Számítógépes Hálózatok. 5. gyakorlat
Számítógépes Hálózatok 5. gyakorlat PYTHON ALAPOK V. Socket programozás, UDP 2 Óra eleji kiszh Elérés: https://canvas.elte.hu Számítógépes Hálózatok Gyakorlat 1 3 A kommunikációs csatorna kétféle típusa
Java Remote Method Invocation API
RMI Java Remote Method Invocation API RMI Java RMI API(Java Remote Method Invocation API): távoli (remote) objektumok metódusainak meghívását lehetővé tevő fejlesztői interfész (API) Kétfajta implementációja
COMET webalkalmazás fejlesztés. Tóth Ádám Jasmin Media Group
COMET webalkalmazás fejlesztés Tóth Ádám Jasmin Media Group Az előadás tartalmából Alapproblémák, fundamentális kérdések Az eseményvezérelt architektúra alapjai HTTP-streaming megoldások AJAX Polling COMET
Se S r e ial a iza z t a ion o n (in n Ja J v a a v ) a Szerializáció
Serialization (in Java) Szerializáció Java Serialization API Standard eljárás az objektumok állapotának adatfolyamba történő kiírására (elmentésére egy bájtszekvenciába), és visszatöltésére Perzisztencia
Interfészek. PPT 2007/2008 tavasz.
Interfészek szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Témakörök Polimorfizmus áttekintése Interfészek Interfészek kiterjesztése 2 Már megismert fogalmak áttekintése Objektumorientált
Adatkezelés. 11. előadás (Entity Beans)
Adatkezelés 11. előadás (Entity Beans) Java EE konténerek (ismétlés) Szerver oldali Szerver (tartalmazza a másik kettőt) EJB konténer Web konténer Kliens oldali Alkalmazás konténer Böngésző java pluginje
JNDI - alapok. Java Naming and Directory Interface
JNDI - alapok Java Naming and Directory Interface Naming Service Naming service: nevek hozzárendelése objektumokhoz, elérési lehetőség (objektumok/szolgáltatások lokalizálása), információk központosított
és az instanceof operátor
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
QBE Édes Otthon lakásbiztosítás tarifáló webservice. Fejlesztői dokumentáció 1.0.2
QBE Édes Otthon lakásbiztosítás tarifáló webservice Fejlesztői dokumentáció 1.0.2 Az ebben a dokumentumban található információ a FoxArt Kft. tulajdona, és bizalmas anyagként került átadásra. Az anyag
Concurrency in Swing
Concurrency in Swing A szálkezelés a swing alkalmazásokban is fontos. Cél egy olyan felhasználói felület készítése, amely soha nem fagy, mindig válaszol a felhasználói interakciókra, bármit is csináljon
Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán
Java VIII. Az interfacei és az instanceof operátor Krizsán Zoltán Miskolci Egyetem Általános Informatikai Tanszék Utolsó módosítás: 2005. 10. 24. Java VIII.: Interface JAVA8 / 1 Az interfészről általában
Enterprise Java Beans. EJB - Általános bevezető
Enterprise Java Beans EJB - Általános bevezető EJB Sun definíció: The Enterprise JavaBeans architecture is a component architecture for the development and deployment of component-based distributed business
Introduction. Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration. Dr. Balázs Simon BME, IIT
Introduction Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration Dr. Balázs Simon BME, IIT Általános információk Előadás: csütörtök, 8:30-10:00, IB.025. Gyakorlat: páratlan péntek,
R I Szer e i r alizáció.
Bevezetés Java RMI Párhuzamos és Elosztott rendszerek II. Dr. Mileff Péter A számítógép-hálózatok rohamos terjedésével a hálózattal összekapcsolt számítógépekbıl álló rendszerek egyre népszerőbbek: Erıforrás
Rétegezett architektúra HTTP. A hálózatfejlesztés motorját a hálózati alkalmazások képezik. TCP/IP protokoll készlet
HTTP Hálózat Rétegezett architektúra felhasználók Alkalmazási Web, e-mail, file transfer,... Szállítási Internet Hálózat-elérési Végponttól végpontig terjedő átvitel, Megbízható átvitel, sorrendbe állítás,
SOAP komponensek Delphiben
SOAP komponensek Delphiben (Simple Object Access Protocol) Bevezetés -Azegyszerűen programozható webhozzáférés azt jelenti, hogy a fejlesztők saját programjukat a weben elérhető szolgáltatásokból építik
Elosztott rendszerek. Az elıadás. Az elosztott rendszer definíciója. Köztesrétegként felépülı elosztott rendszer
1. elıadás Az elıadás Elosztott ek 1. Bevezetés Tankönyv: Andrew S. Tanenbaum Maarten van Steen: Elosztott Rendszerek Alapelvek és Paradigmák http://people.inf.elte.hu/bonnie bonnie@inf.elte.hu Az elosztott
DSD DSD. Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások. Kovács László Pataki Balázs Pataki Máté MTA SZTAKI DSD
MTA SZTAKI Department of Distributed Systems Egy országos méretű orvosi adatbázissal kapcsolatos informatikai kihívások Kovács László Pataki Balázs Pataki Máté Témakörök MTA SZTAKI bemutatása Nemzeti Rákregiszter
COMPANY PROFILE SZOFI ALGORITHMIC RESEARCH KFT
COMPANY PROFILE SZOFI ALGORITHMIC RESEARCH KFT WWW.SZOFIUSA.COM CÉGTÖRTÉNET 1990 Alapítás 1990 Informatikai fejlesztések kezdete 1992 Felsőfokú informatikai képzési rendszer kidolgozása a kormányzat részére
1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7
1. Gyakorlat: Telepítés: Windows Server 2008 R2 Enterprise, Core, Windows 7 1.1. Új virtuális gép és Windows Server 2008 R2 Enterprise alap lemez létrehozása 1.2. A differenciális lemezek és a két új virtuális
A Java nyelv. V. rész Az objektumorientáltság magasabb fokú tulajdonságai: Perszisztencia, CORBA, RMI
A Java nyelv V. rész Az objektumorientáltság magasabb fokú tulajdonságai: Perszisztencia, CORBA, RMI A Java a jövő programozási nyelve. A jövőt azonban csak a jelenen keresztül, a múlt felhasználásával
Tűzfal megoldások. ComNETWORX nap, 2001. I. 30. ComNETWORX Rt.
Tűzfal megoldások ComNETORX nap, 2001. I. 30. ComNETORX Rt. N Magamról Hochenburger Róbert MCNI / MCNE MCNI = Master CNI MCNE = Master CNE CNI = Certified Novell Instructor CNE = Certified Novell Engineer
C# Nyelvi Elemei. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei / 18
C# Nyelvi Elemei Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) C# Nyelvi Elemei 2013 1 / 18 Tartalomjegyzék 1 Object 2 Típusok 3 String 4 RegEx Tóth Zsolt (Miskolci Egyetem) C# Nyelvi
Számítógép hálózatok
Számítógép hálózatok Számítógép hálózat fogalma A számítógép-hálózatok alatt az egymással kapcsolatban lévő önálló számítógépek rendszerét értjük. Miért építünk hálózatot? Információ csere lehetősége Központosított
Komponens alapú fejlesztés
Komponens alapú fejlesztés Szoftver újrafelhasználás Szoftver fejlesztésekor korábbi fejlesztésekkor létrehozott kód felhasználása architektúra felhasználása tudás felhasználása Nem azonos a portolással
Számítógépes munkakörnyezet II. Szoftver
Számítógépes munkakörnyezet II. Szoftver A hardver és a felhasználó közötti kapcsolat Szoftverek csoportosítása Számítógép működtetéséhez szükséges szoftverek Operációs rendszerek Üzemeltetési segédprogramok
A Java Persistence API PersistenceAPI / 3
A Java Persistence API Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem Utolsó módosítás: 2007. 11. 27. A Java Persistence API Előzm zmények Szerializálás Egyedi kevés automatizmus Hibernate,
CCS Hungary, 2000 szeptember. Handling rendszer technikai specifikáció
CCS Hungary, 2000 szeptember Handling rendszer technikai specifikáció Hálózati architektúra SITA Hálózat/ Vám/ Internet/... CodecServer üzenet központ DB LA N Laptop computer RAS elérés Adatbázis szerver
Bevezetés E LSŐ FEJEZET
E LSŐ FEJEZET Bevezetés A Java nyelv története 1991-ig nyúlik vissza, a nyilvánosság számára azonban csak 1995-től vált ismertté. Az azóta eltelt évek során a nyelv, illetve a hozzá kapcsolódó technológiák
Internet programozása. 1. előadás
Internet programozása 1. előadás Áttekintés 1. Mi a PHP? 2. A PHP fejlődése 3. A PHP 4 újdonságai 4. Miért pont PHP? 5. A programfejlesztés eszközei 1. Mi a PHP? Egy makrókészlet volt, amely személyes
2011.11.29. JUnit. JUnit használata. IDE támogatás. Parancssori használat. Teszt készítése. Teszt készítése
Tartalom Integrált fejlesztés Java platformon JUnit JUnit használata Tesztelési technikák Demo 2 A specifikáció alapján teszteljük a program egyes részeit, klasszikus V-modell szerint Minden olyan metódust,
OOP és UML Áttekintés
OOP és UML Áttekintés Tóth Zsolt Miskolci Egyetem 2013 Tóth Zsolt (Miskolci Egyetem) OOP és UML Áttekintés 2013 1 / 32 Tartalom jegyzék 1 OOP Osztály Öröklődés Interfész, Absztrakt Osztály Kivétel kezelés
A MiddleWare rendszerek Rolls Roysa
A MiddleWare rendszerek Rolls Roysa WebLogic Server alkalmazása pénzügyi integrált környezetben 2016.10.11 HOUG konferencia Budapest Dorsum Szerepünk az informatika és a pénzügy világában A Dorsum jelenleg
EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA
EMTP, EGY ÚJ LEVELEZÕ PROTOKOLL ÉS IMPLEMENTÁCIÓJA Iványi Tibor, ivanyit@tigris.klte.hu Csukás Levente, csukasl@fox.klte.hu Kossuth Lajos Tudományegyetem Informatikai és Számító Központ Abstract The well