CORBA Łukasz Wnęk.

Slides:



Advertisements
Podobne prezentacje
Zastosowanie LDAP w obsłudze katalogów bibliotecznych
Advertisements

1. 2 W ostatnim okresie jesteśmy świadkami ogromnemu postępowi w technologiach rozproszonych systemów informatycznych a co za tym idzie rozproszenie danych.
Mechanizmy pracy równoległej
Programowanie obiektowe
Zaawansowane metody programowania – Wykład V
Bazy danych i inżynieria oprogramowania
WEB SERVICE Stefan Rutkowski.
Studia Podyplomowe IT w Biznesie Systemy Rozproszone
Studia Podyplomowe IT w Biznesie Systemy Rozproszone Wykład 4 Wprowadzenie do OMG CORBA (2) Polsko-Japońska Wyższa Szkoła Technik Komputerowych, Warszawa.
Studia Podyplomowe IT w Biznesie Systemy Rozproszone
Projektowanie Aplikacji Komputerowych
Architektura systemu Gra strategiczna „Strusia Jama”
© K.Subieta. Systemy rozproszone 6, Folia 1 styczeń 2005 Systemy rozproszone (SYR) Wykładowca: Kazimierz Subieta Polsko-Japońska Wyższa Szkoła Technik.
RMI I RMI-IIOP Wprowadzenie Co to jest RMI?
Internet Communication Engine
Standardy w zakresie systemów rozproszonych i baz danych
Architektury systemów rozproszonych
Systemy operacyjne Wykład nr 5: Wątki Piotr Bilski.
Wykład 2. Wprowadzenie do architektur systemów rozproszonych
Zasady zaliczenia Warunki uzyskania zaliczenia:
Systemy operacyjne.
Proxy WWW cache Prowadzący: mgr Marek Kopel
Proxy (WWW cache) Sieci Komputerowe
Information Bridge Framework platforma integracji Microsoft Office 2003 z aplikacjami Line of Business Krzysztof Michalski10/01/2005.
Enteprise Java Beans Emil Wcisło.
Wzorce projektowe w J2EE
Wstęp do programowania obiektowego
Artur Szmigiel Paweł Zarębski Kl. III i
Architektury systemów rozproszonych
Analiza, projekt i częściowa implementacja systemu obsługi kina
Inżynieria Oprogramowania
WebSphere Everyplace Micro Environment IBM Workplace Client Technology, Micro Edition Monika Nawrot, Tomasz Jadczyk, Tomasz Sadura KI, EAIiE, AGH.
Rozwój aplikacji przy wykorzystaniu ASP.NET
Web Serwisy w praktyce Technologie internetowe ( )
Protokół Komunikacyjny
Instytut Tele- i Radiotechniczny WARSZAWA
Źródła: podręcznikopracował: A. Jędryczkowski.
Jerzy Jelinek Paweł Korpowski
Jakub Wołczko W obiektowym świecie… Jakub Wołczko
WPROWADZENIE W ŚWIAT OBIEKTÓW
Narzędzia administracyjne
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
Wybrane zagadnienia relacyjnych baz danych
Programowanie obiektowe – język C++
SOS SYSTEM OBSŁUGI SZKOŁY
Programowanie obiektowe 2013/2014
S IMON SAYS … A RCHITECTURE ! Usługi zdalne Technologie, techniki i praktyki implementacji.
Sieci komputerowe.
SPECJALNOŚĆ: Oprogramowanie Systemowe
Adam Ptaszek Krystian Formiński
Skalowanie aplikacji JPA na przykładzie Oracle TopLink Grid
UML W V ISUAL S TUDIO Mateusz Lamparski. UML D EFINICJA Unified Modeling Language (UML) to graficzny język do obrazowania, specyfikowania, tworzenia i.
Proces tworzenia oprogramowania Proces tworzenia oprogramowania jest zbiorem czynności i związanych z nimi wyników, które prowadzą do powstania produktu.
Clustering Technologia klastrowa - architektura łącząca serwery i urządzenia pamięci masowych w celu zwiększenia niezawodności, bezpieczeństwa i wydajności.
Zakres wykładu Pojęcia podstawowe Architektury i oprogramowanie Przykłady systemów rozproszonych.
Zakres wykładu Kierunki rozwoju oprogramowania systemów rozproszonych Własności wybranych architektur - problemy badawcze Przykładowe obszary zastosowań.
XML w serwisach webowych. Zapotrzebowanie na serwisy XML.
Obiekty COM Przemysław Buczkowski. Plan prezentacji 1.Wprowadzenie do COM 2.Historia standardu 3.Jak działa COM 4.Interface IUknown 5.Paradygmaty COM.
Platforma .Net.
Łukasz Bieszczad Mateusz Gałązka Karol Włodarek
Programowanie Zaawansowane
PROGRAMOWANIE W JAVA Informatyka Stosowana – ROK II / III Laboratoria mgr inż. Krzysztof Bzowski.
Struktura systemu operacyjnego
Środowisko wspomagania automatycznej instalacji GNU/Linux „Multistart” Marta Szcześniak.
Temat: Porównanie technologii php,c# oraz javascript na przykładzie webaplikacji typu społecznościowy agregator treści Autor: Wojciech Ślawski.
Architektura Rafał Hryniów. Architektura Wizja projektu systemu, którą dzielą twórcy Struktura komponentów systemu, ich powiązań oraz zasad i reguł określających.
Aplikacje i usługi internetowe
JavaBeans by Paweł Wąsala
Zapis prezentacji:

CORBA Łukasz Wnęk

Model obiektowy Grupa OMG definiując standard CORBA opierała się na opracowanym przez siebie abstrakcyjnym modelu obiektowym. Model opisany jest modelem konkretnym związanym z CORBą, przez co ma pewne ograniczenia oraz własne osobliwości. Obiekt jest identyfikowalnym, złożoną jednostką, która udostępnia jedną lub więcej usług.

OMG Opracowanie jednorodnej architektury z użyciem technologii obiektowej, mającej na celu integrację rozproszonych aplikacji, która zapewniałaby: ponowne użycie komponentów oprogramowania i danych współdziałanie i przenaszalność podstawy rynku kompatybilnego oprogramowania

Zalety rozproszonych obiektów Zgodność z logiką biznesu (obiekty biznesowe mogą być bezpośrednio zaimplementowane jako obiekty CORBA) Skalowalność aplikacji: mała zależność czasu reakcji systemu od zwiększenia ilości danych, liczby użytkowników, liczby węzłów. Dekompozycja aplikacji na małe elementy wykonawcze (obiekty, metody,...) Przyrostowe dodawanie/odejmowanie funkcjonalności (“płacę tylko za to, czego używam”) Podział zasobów i zbalansowanie obciążeń Współbieżność i asynchroniczne przetwarzanie

ORB-pośrednik zamówień obiektowych

ORB (ang. Object Request Broker) ORB (ang. Object Request Broker). Jego głównym zadaniem jest dostarczanie zleceń do obiektów i następnie zwrot odpowiedzi od nich do klientów. Zapewnia on przezroczystą komunikację pomiędzy klientem i serwerem. ORB ukrywa: Lokalizację obiektu: klient nie potrzebuje wiedzieć, gdzie obiekt jest ulokowany. Implementację obiektu: klient nie potrzebuje wiedzieć, jak obiekt jest zaimplementowany. Stan działania obiektu: klient nie potrzebuje wiedzieć, czy obiekt jest aktywny, gotowy do akceptacji zapytania, czy nie uczestniczy aktualnie w innych procesach. Mechanizm komunikowania się obiektów: klient nie potrzebuje wiedzieć, jaki mechanizm komunikacyjny jest aktualnie używany (TCP/IP, lokalne wywołania metod, itd.)

Pniaki i szkielety Pniak(stub) znajduje sie po stronie klienta i zajmuje się tworzeniem i wysyłaniem jego zleceń. Szkielet (skeleton) znajduje się po stronie serwera. Szkielet wypełniony kodem implementacji operacji zajmuje się dostarczanie zleceń klienta do implementacji obiektów.

SERWISY CORBY Standard CORBY określa zbiór usług – serwisów (COS) wspomagających współdziałanie rozproszonych obiektów. Serwisy są to standardowe obiekty CORBY, określane jako Object Services, zdefiniowane przy użyciu interfejsów języka IDL jako części składowe serwisu ORB.

Serwisy CORBA Jednym z głównych serwisów Corby jest NamingService. Pozwala on na większą uniwersalność systemu rozproszonego. Dostęp to powyższego serwisu dostępny jest z każdej platformy systemowej. Usługa ta umożliwia przekazanie referencji do obiektu. Działanie NamingService przedstawia poniższy rysunek.

Działanie

SERWISY cd... Object life cycle – definiuje sposób tworzenia, likwidowania, kopiowania i przenoszenia obiektów CORBY,  Naming – definiuje zasady nazewnictwa obiektów CORBY,  Events – definiuje sposób komunikacji między obiektami CORBY,  Relationships – specyfikuje relacje między obiektami CORBY,  Externalization – nadzoruje transformację obiektów CORBY w zewnętrznych środowiskach,

CORBA-RMI CORBA Java / RMI Każdy interfejs dziedziczy z CORBA.Object Każdy serwer implementuje java.rmi.Remote Obiekty identyfikowane przez referencje Interfejsy identyfikuje nazwa, implementacje przechowywane w repozytorium Interfejsy identyfikuje nazwa, implementacje mapowane na URL w rejestrze Referencja do serwera tworzona przez adapter Referencję do serwera tworzy metoda UnicastRemoteObject. exportObject(this) Używa protokołu GIOP Używa protokołu JRMP Klient uzyskuje referencję do serwera z serwisu nazwowego lub handlowego Klient używa metody lookup()

CORBA-RMI cd Mapowanie nazw obiektów do implementacji wykonuje repozytorium implementacji Mapowanie nazw do implementacji wykonuje rejestr Informacje o parametrach metod znajdują się w repozytorium interfejsów Informacje o parametrach metod przechowują same obiekty. Dostęp możliwy przez refleksję. Znajdowaniem obiektów zajmuje się ORB Znajdowaniem obiektów zajmuje się Wirtualna Maszyna Javy Podczas wołania metod interfejsy przekazywane są przez referecję, inne obiekty przez wartość Wszystkie interfejsy dziedziczące z Remote przekazywane przez referencję, reszta przez wartość Nie obsługuje garbage collection Garbage collection realizowane przez Wirtualną Maszynę Obsługuje języki oraz platformy, dla których istnieje implementacja CORBA ORB Dostępne wyłącznie dla Wirtualnej Maszyny Javy (w tym produkcji Suna i Microsoftu)

CORBA-COM Zarówno COM, jak i CORBA służą do tworzenia i komunikowania się struktury rozproszonych obiektów. Technologie te mają odrębny sposób obsługi obiektów i oferują różne usługi. Obie mają też swoje plusy i minusy.

CORBA-COM cd ... COM jest dostępny bezpłatnie dla wszystkich komputerów pracujących w środowisku Windows. Jest to jego zaleta, ale zarazem i wada - nie ma bowiem wersji COM dla żadnej innej platformy. Jego potęgą jest integracja na niskim poziomie z systemem operacyjnym.

CORBA-COM cd CORBA jest technologią zaimplementowaną praktycznie dla każdej platformy i wspierającą prawie każdy język programowania. Stosując CORBA, spotkamy się jednak z pewnym problemem - nie wszystkie ORB-y potrafią się ze sobą skomunikować. Potęga CORBA tkwi w jej niezawodności i skalowalności, systemy stosujące tę technologię zapewniają efektywniejsze wykorzystanie komputerów i większą stabilność pracy.