WYKŁAD: Przetwarzanie rozproszone typu klient-serwer.
|
|
- Urszula Kwiatkowska
- 8 lat temu
- Przeglądów:
Transkrypt
1 WYKŁAD: Przetwarzanie rozproszone typu klient-serwer. Przetwarzanie rozproszone: - różnorodne zasoby w różnych lokalizacjach - wiele procesów obliczeniowych dedykowanych do tych zasobów (typowe programy to MPMD) - heterogeniczność sprzętu - dominujący paradygmat obliczeń : klient-serwer (ma obecnie duże znaczenie komercyjne) Paradygmat klient-serwer opisuje asymetryczną relację pomiedzy dwoma procesami przebiegającymi zwykle w różnych miejscach: proces serwer : - zarządza pewnymi zasobami w miejscu A; - oferuje usługi dostępne dla innych procesów; - po uruchomieniu działa w długim okresie czasu; - oczekuje pasywnie na prośbę klienta; - wykonuje zadania odpowiadając na zgłoszenia klientów proces klient : - potrzebuje danej usługi aby wykonać swoją pracę w miejscu B; - wysyła prośbę do serwera dotyczącą wykonania konkretnego zadania z zakresu jego usług; - otrzymuje z serwera wynik tego zadania ================================================= Przykład Serwer zarządza bazą danych Oferowana usługa: dostęp do bazy danych Klient uzyskuje dostęp do konkretnego zapisu w bazie danych. =================================================
2 W paradygmacie klient-serwer nie występuje równoległość jest to raczej metoda strukturalizacji programów i metoda integracji różnorodnych zasobów. ================================================= Przykład W dużych aplikacjach rozdział pomiędzy klientem a serwerem jest często rozdziałem pomiędzy różnymi programami opracowanymi przez różnych autorów a nawet różne firmy. Omawiany paradygmat jednoznacznie definiuje interfejs pomiędzy tymi programami. ================================================= Jednak równoległość nie jest wykluczona: - po stronie klienta może być stosowana wielowątkowość, t.j. system może przejść do wykonywania innego zadania, podczas gdy sam klient oczekuje na odpowiedź serwera; - również serwer może wykonywać inne zadania oczekując na zgłoszenie klienta. Systemy klient-serwer są typowo budowane na bazie architektur LAN/WAN tworzących luźno związane systemy rozproszone. Stąd w tych systemach przykłada się większą niż w systemach równoległych wagę do bezpieczeństwa, tolerowania błędów, heterogeniczności i interoperacyjności. Systemy klient-serwer w odróżnieniu od systemów równoległych cechuje dynamiczność. Programista nie wychodzi od jednego dobrze zdefiniowanego zadania do rozwiązania oraz specyfikacji programu, który trzeba podzielić na procesy obliczeniowe. Oprogramowując serwer zna interfejs, ale nie zna liczby klientów, ani zbioru wszystkich programów, które w przyszłości będą korzystać z usług serwera. Klienci także nie znają się wzajemnie.
3 Systemy klient-serwer są więc bardziej nieprzewidywalne. Systemy klient-serwer pracują zwykle w modelu MPMD, chociaż wielu klientów może wykonywać ten sam program. Programy klienta i serwera wykorzystują oddzielne przestrzenie adresowe i komunikują się poprzez wymianę komunikatów. Konkretne mechanizmy różnią się od prostych send/receive. Typowe zasoby serwerów to systemy plików, bazy danych, skomplikowane programy, drukarki itp. Serwer rezyduje zwykle w pobliżu zasobów. Większość serwerów kooperuje z wieloma klientami. Pojedynczy klient może współpracować w swoim okresie pracy z wieloma serwerami. Serwer wykonując powierzone zadanie - może korzystać z usług innych serwerów. Serwer obsługujący wielu klientów może pracować iteracyjnie lub współbieżnie: - praca iteracyjna: w danym czasie jest obsługiwany jeden klient, serwer nie odpowiada na prośby innych klientów - praca współbieżna (wielowątkowa) : każdą prośbę klienta obsługuje oddzielny wątek (dobra współpraca z maszynami równoległymi) Aby uniknąć przeciążenia pojedynczego serwera te same usługi mogą być oferowane przez wiele serwerów. W dostępie do zbioru serwerów pośredniczy program rozsyłający (dispatcher), który przydzielając zadaniom serwery bierze pod uwagę specjalizację serwerów, równomierność ich obciążenia i priorytety zadań.
4 Zalety paradygmatu klient-serwer : 1. poprawa struktury programów wsparcie dla zespołowego tworzenia oprogramowania 2. elastyczność klient i serwer mogą być aktualizowane bądź wymieniane niezależnie tak długo jak długo zachowany jest ten sam interfejs 3. specjalizacja każde podzadanie może być przydzielone najlepszej dla niego maszynie 4. skalowalność możliwość dodawania klientów bez zmiany ogólnej struktury programu, obowiązki przeciążonego serwera może przejąć silniejsza maszyna lub zbiór maszyn 5. możliwość poprawy wydajności wielowątkowość w kodzie klienta, współdzielenie serwera pomiędzy różne aplikacje, zastosowanie serwera współbieżnego Podobieństwa do systemów z wymianą komunikatów: - systemy klient-serwer pracują z rozłącznymi przestrzeniami adresowymi; - programista lub administrator systemu odpowiada za rozdział danych, szeregowanie zadań, powielanie danych w systemie itp. Podobieństwo z systemem master-slave (dotyczy tylko niektórych systemów) : - pojedynczy klient to master, serwery to slaves
5 Opozycja w stosunku do wielowątkowości: system wielowątkowy = jeden proces + wiele wątków sterowania system klient-serwer = 1 wątek sterowania + 2 przełączane procesy Warianty systemów klient-serwer : - dwuwarstwowe (two-tier): warstwa serwerów + warstwa klientów (programy aplikacyjne w jednej z tych warstw) Warstwa serwerów zapewnia dostęp do zasobów, warstwa klientów realizuje interfejs użytkownika. Jeżeli programy aplikacyjne są w warstwie klientów to mamy do czynienia z tzw. fat-client. W przeciwnym wypadku jest to tzw. thin-client. Cechy thin-client: - łatwiejsze do utrzymania, aktualizacje są wykonywane bezpośredno na serwerze pod kontrolą administratora - wymagana jest mniejsza przepustowość sieci, do inicjacji pracy serwera wystarcza jeden komunikat - większe obciążenie serwera, skutkujące dłuższymi czasami odpowiedzi - mniejsza elastyczność zmiany dotykają wszystkich klientów Cechy fat-client: - trudniejsze do utrzymania, aktualizacje trzeba przesyłać do wszystkich klientów - wymagana jest większa przepustowość sieci, do inicjacji pracy serwera potrzeba kilka komunikatów - mniejsze obciążenie serwera, skutkujące krótszymi czasami odpowiedzi - większa elastyczność w zmianie funkcjonalności u nowego Klienta - trójwarstwowe (three-tier): warstwa serwerów + warstwa pośrednia + warstwa klientów (programy aplikacyjne działają
6 w warstwie pośredniej, dwie pierwsze warstwy powstały z podziału warstwy serwerów) Obszary zastosowań: 1. bazy danych 2. przetwarzanie transakcyjne (transakcja sekwencja czynności, która jest wykonywana w całości albo wcale, np. w systemach rezerwacji lotów) 3. serwery druku, nazw i plików 4. WWW największa dziś aplikacja klient-serwer (maszyna w tym samym czasie może dla jednej aplikacji serwerem a dla innej klientem (w tym przetwarzanie formularzy WWW) 5. zdalne obliczenia numeryczne (NetSolve) i gridowe Implementacje systemów klient-serwer:
7 - systemy przetwarzania komunikatów; - gniazda (sockets) - RPC (Remote Procedure Calls) Gniazda (sockets) to model interfejsu, poprzez który programista może mieć dostęp do funkcjonalności protokołów TCP, UDP i innych (typu broadcast). Interfejs wprowadza niewielki spadek jakości. Gniazda są implementowane jako biblioteki stanowiące część systemu operacyjnego (np. Unix) lub języka (Java sockets). Przykład : Berkeley Sockets Adresowanie : klient musi znać adres złożony z adresu hosta (liczba 32-bitowa otrzymywana z funkcji konwersji, której argumentem jest nazwa hosta np ) oraz numer portu (czasem predefiniowanego). Inicjalizacja serwera : na początku programista rejestruje serwer w systemie wywołując funkcje socket i bind (z parametrami). Następnie serwer rozpoczyna pracę wywołując funkcję listen (z liczbą wiadomości do buforowania w systemie jako parametrem) dla zorientowanego na połączenia serwerem (TCP), lub recvfrom jeżeli jest to bezpołączeniowy serwer (UDP). Zaletą gniazd jest przenośność (portability). Generalnie gniazda są zbyt wolne dla wykorzystania w programowaniu równoległym (chociaż istnieją zbudowane na nich systemy PVM i MPI). Gniazda TCP są niezawodne, a gniazda UDP szybkie. Zawodność UDP polega na utracie bądź nałożeniu wiadomości. Schematy wymiany wiadomości pomiędzy serwerem a klientem ilustrują rysunki.
8
9 Gniazda Java (Java Sockets) Java włącza standard Berkeley Sockets API do języka programowania. Java sockets bazują na obiektach i są bardziej komfortowe dla programisty (np. akceptowane są nazwy takie jak maszyna.miejsce.pl, występuje mniej funkcji i parametrów, łatwo programuje się typowe przypadki).
10 Java sockets wspomagają multicasting. Po dołączeniu procesu do grupy proces może otrzymywać i wysyłać komunikaty od/do członków grupy. System Java traktuje komunikaty jako strumienie bajtów, które wymagają interpretacji zadanie to pozostawia się programiście. Zdalne wywołania procedur (Remote Procedure Calls - RPC) RPC jest mechanizmem komunikacji między-procesorowej przypominającym zwykłe wywołania procedur. Główna różnica polega na tym, że tradycyjnie procedura jest wywoływana wewnątrz jednego procesu, a w RPC wywołanie i wywoływana procedura należą do różnych procesów. W kontekście systemów klient-serwer wywoływana procedura pełni funkcję serwera. W komunikacji pośredniczą lokalne procedury (stubs), które reprezentują części zdalnych programów klienta i serwera. Wywołanie klienta trafia więc do lokalnej procedury klienta i to procedura transmituje zgłoszenie do serwera, np. poprzez gniazda, przy czym parametry wejściowe są często pakowane do kilku komunikatów w innym formacie (marshaling). Po stronie serwera mechanizm jest analogiczny. Stubs są generowane w IDL (Interface Definition Language).
11 Ocena: 1. W porównaniu z gniazdami zaletą RPC jest wyższy poziom i zwięzły opis co ułatwia pracę programisty. 2. RPC są wolniejsze niż same gniazda. 3. RPC nie wspomagają równoległości, wymagają większego nakładu programowania niż np. MPI. 4. RPC oddziela klienta od serwera. 5. RPC mają ograniczoną transparentność ponieważ występuje duże prawdopodobieństwo błedów w transmisji, co programista musi przewidzieć. Implementacje: Open Network Computing RPC Distributed Computing Environment RPC
Programowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 6 dr inż. Komunikowanie się procesów Z użyciem pamięci współdzielonej. wykorzystywane przede wszystkim w programowaniu wielowątkowym. Za pomocą przesyłania
Bardziej szczegółowoWykład 4: Protokoły TCP/UDP i usługi sieciowe. A. Kisiel,Protokoły TCP/UDP i usługi sieciowe
N, Wykład 4: Protokoły TCP/UDP i usługi sieciowe 1 Adres aplikacji: numer portu Protokoły w. łącza danych (np. Ethernet) oraz w. sieciowej (IP) pozwalają tylko na zaadresowanie komputera (interfejsu sieciowego),
Bardziej szczegółowo76.Struktura oprogramowania rozproszonego.
76.Struktura oprogramowania rozproszonego. NajwaŜniejsze aspekty obiektowego programowania rozproszonego to: Współdziałanie (interoperability) modułów programowych na róŝnych maszynach. Wielokrotne wykorzystanie
Bardziej szczegółowoKlient-Serwer Komunikacja przy pomocy gniazd
II Klient-Serwer Komunikacja przy pomocy gniazd Gniazda pozwalają na efektywną wymianę danych pomiędzy procesami w systemie rozproszonym. Proces klienta Proces serwera gniazdko gniazdko protokół transportu
Bardziej szczegółowoProblemy niezawodnego przetwarzania w systemach zorientowanych na usługi
Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi Jerzy Brzeziński, Anna Kobusińska, Dariusz Wawrzyniak Instytut Informatyki Politechnika Poznańska Plan prezentacji 1 Architektura
Bardziej szczegółowoRPC. Zdalne wywoływanie procedur (ang. Remote Procedure Calls )
III RPC Zdalne wywoływanie procedur (ang. Remote Procedure Calls ) 1. Koncepcja Aplikacja wywołanie procedury parametry wyniki wykonanie procedury wynik komputer klienta komputer serwera Zaletą takiego
Bardziej szczegółowoSystemy rozproszone. na użytkownikach systemu rozproszonego wrażenie pojedynczego i zintegrowanego systemu.
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową..
Bardziej szczegółowoProgramowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 11 dr inż. CORBA CORBA (Common Object Request Broker Architecture) standard programowania rozproszonego zaproponowany przez OMG (Object Management Group)
Bardziej szczegółowoMechanizmy pracy równoległej. Jarosław Kuchta
Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy
Bardziej szczegółowoRPC Remote Procedural Call. Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc
RPC Remote Procedural Call Materiały do prezentacji można znaleźć na stronie: http://www.houp.info/rpc 1 Wprowadzenie Podstawowe założenia RPC: Program uruchamiany na maszynie A może wywołać procedurę
Bardziej szczegółowoEXSO-CORE - specyfikacja
EXSO-CORE - specyfikacja System bazowy dla aplikacji EXSO. Elementy tego systemu występują we wszystkich programach EXSO. Może on ponadto stanowić podstawę do opracowania nowych, dedykowanych systemów.
Bardziej szczegółowoOprogramowanie systemów równoległych i rozproszonych. Wykład 6
Wykład 6 p. 1/2 Oprogramowanie systemów równoległych i rozproszonych Wykład 6 Dr inż. Tomasz Olas olas@icis.pcz.pl Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Wykład 6 p.
Bardziej szczegółowoSystemy rozproszone System rozproszony
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową.
Bardziej szczegółowoKomunikacja i wymiana danych
Budowa i oprogramowanie komputerowych systemów sterowania Wykład 10 Komunikacja i wymiana danych Metody wymiany danych Lokalne Pliki txt, csv, xls, xml Biblioteki LIB / DLL DDE, FastDDE OLE, COM, ActiveX
Bardziej szczegółowowspółbieżność - zdolność do przetwarzania wielu zadań jednocześnie
Systemy rozproszone Wg Wikipedii: System rozproszony to zbiór niezależnych urządzeń (komputerów) połączonych w jedną, spójną logicznie całość. Połączenie najczęściej realizowane jest przez sieć komputerową.
Bardziej szczegółowoAkademia Techniczno-Humanistyczna w Bielsku-Białej
Akademia Techniczno-Humanistyczna w Bielsku-Białej Wydział Budowy Maszyn i Informatyki Laboratorium z sieci komputerowych Ćwiczenie numer: 9 Temat ćwiczenia: Aplikacje klient-serwer. 1. Wstęp teoretyczny.
Bardziej szczegółowoAplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html
Aplikacje RMI https://docs.oracle.com/javase/tutorial/rmi/overview.html Dr inż. Zofia Kruczkiewicz wykład 4 Programowanie aplikacji internetowych, wykład 4 1 1. Zadania aplikacji rozproszonych obiektów
Bardziej szczegółowoĆwiczenie nr: 9 Obliczenia rozproszone MPI
Ćwiczenie nr: 9 Temat: Obliczenia rozproszone MPI 1. Informacje ogólne MPI (Message Passing Interface) nazwa standardu biblioteki przesyłania komunikatów dla potrzeb programowania równoległego w sieciach
Bardziej szczegółowoArchitektury usług internetowych. Tomasz Boiński Mariusz Matuszek
Architektury usług internetowych 2016 Tomasz Boiński Mariusz Matuszek Organizacja przedmiotu 1. Wykład 2 kolokwia po 25 punktów (23 listopada i 27 stycznia) 2. 6 zadań laboratoryjnych, zadania 1-5 po 8
Bardziej szczegółowoZaawansowane narzędzia programowania rozproszonego
Zaawansowane narzędzia programowania rozproszonego Karol Gołąb karol.golab@tls-technologies.com 28 listopada 2001 1 Streszczenie Omówienie i porównanie popularnych standardów mechanizmów komunikacyjnych:
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Dr inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki 2017 APLIKACJE SIECIOWE Definicja Architektura aplikacji sieciowych Programowanie
Bardziej szczegółowoZdalne wywołanie procedur. Krzysztof Banaś Systemy rozproszone 1
Zdalne wywołanie procedur Krzysztof Banaś Systemy rozproszone 1 RPC Komunikacja za pomocą gniazd jest wydajna, gdyż korzystamy z funkcji systemowych niewygodna, gdyż musimy wyrażać ją za pomocą jawnego
Bardziej szczegółowoWprowadzenie. Dariusz Wawrzyniak 1
Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl Dariusz.Wawrzyniak@put.edu.pl www.cs.put.poznan.pl/dwawrzyniak
Bardziej szczegółowoĆwiczenie nr: 9 Obliczenia rozproszone MPI
Ćwiczenie nr: 9 Temat: Obliczenia rozproszone MPI 1. Informacje ogólne MPI (Message Passing Interface) nazwa standardu biblioteki przesyłania komunikatów dla potrzeb programowania równoległego w sieciach
Bardziej szczegółowoWzorce projektowe. dr inż. Marcin Pietroo
Wzorce projektowe dr inż. Marcin Pietroo Adapter - strukturalny wzorzec projektowy, którego celem jest umożliwienie współpracy dwóm klasom o niekompatybilnych interfejsach - adapter przekształca interfejs
Bardziej szczegółowoBazy danych 2. Wykład 1
Bazy danych 2 Wykład 1 Sprawy organizacyjne Materiały i listy zadań zamieszczane będą na stronie www.math.uni.opole.pl/~ajasi E-mail: standardowy ajasi@math.uni.opole.pl Sprawy organizacyjne Program wykładu
Bardziej szczegółowoRelacyjne, a obiektowe bazy danych. Bazy rozproszone
2 Relacyjne, a obiektowe bazy danych. Bazy rozproszone Zastosowania baz danych systemy bankowe (bankomat) systemy masowej obsługi (hipermarket) rezerwacja biletów lotniczych telefonia komórkowa (sms) Dziekanat
Bardziej szczegółowoProjektowanie architektury systemu rozproszonego. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Projektowanie architektury systemu rozproszonego Jarosław Kuchta Zagadnienia Typy architektury systemu Rozproszone przetwarzanie obiektowe Problemy globalizacji Problemy ochrony Projektowanie architektury
Bardziej szczegółowoSieci komputerowe. Wykład 7: Transport: protokół TCP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
Sieci komputerowe Wykład 7: Transport: protokół TCP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 7 1 / 23 W poprzednim odcinku Niezawodny transport Algorytmy
Bardziej szczegółowoTworzenie aplikacji rozproszonej w Sun RPC
Tworzenie aplikacji rozproszonej w Sun RPC Budowa aplikacji realizowana jest w następujących krokach: Tworzenie interfejsu serwera w języku opisu interfejsu RPCGEN Tworzenie: namiastki serwera namiastki
Bardziej szczegółowoProgramowanie obiektowe
Programowanie obiektowe Wykład 13 Marcin Młotkowski 27 maja 2015 Plan wykładu Trwałość obiektów 1 Trwałość obiektów 2 Marcin Młotkowski Programowanie obiektowe 2 / 29 Trwałość (persistence) Definicja Cecha
Bardziej szczegółowoTypy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone
Typy przetwarzania Przetwarzanie zcentralizowane Systemy typu mainfame Przetwarzanie rozproszone Architektura klient serwer Architektura jednowarstwowa Architektura dwuwarstwowa Architektura trójwarstwowa
Bardziej szczegółowoWywoływanie metod zdalnych
Wywoływanie metod zdalnych model systemu Wywoływanie metod zdalnych aplikacja kliencka interfejs obiekt serwer Podejście obiektowe do budowy systemów rozproszonych proxy szkielet sieć Istota podejścia
Bardziej szczegółowoPojęcie systemu baz danych
Pojęcie systemu baz danych System baz danych- skomputeryzowany system przechowywania danych/informacji zorganizowanych w pliki. Składa się z zasadniczych elementów: 1) Danych 2) Sprzętu 3) Programów 4)
Bardziej szczegółowoZiMSK. VLAN, trunk, intervlan-routing 1
ZiMSK dr inż. Łukasz Sturgulewski, luk@kis.p.lodz.pl, http://luk.kis.p.lodz.pl/ dr inż. Artur Sierszeń, asiersz@kis.p.lodz.pl dr inż. Andrzej Frączyk, a.fraczyk@kis.p.lodz.pl VLAN, trunk, intervlan-routing
Bardziej szczegółowoWykład Ćwiczenia Laboratorium Projekt Seminarium
WYDZIAŁ ELEKTRONIKI KARTA PRZEDMIOTU Nazwa w języku polskim Języki programowania Nazwa w języku angielskim Programming languages Kierunek studiów (jeśli dotyczy): Informatyka - INF Specjalność (jeśli dotyczy):
Bardziej szczegółowoSpis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7
I Wprowadzenie (wersja 0906) Kurs OPC S7 Spis treści Dzień 1 I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami automatyki I-6 Cechy podejścia dedykowanego
Bardziej szczegółowoKurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)
Spis treści Dzień 1 I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501) I-3 O czym będziemy mówić? I-4 Typowe sytuacje I-5 Klasyczne podejście do komunikacji z urządzeniami
Bardziej szczegółowoWprowadzenie do systemów rozproszonych
Wprowadzenie do systemów rozproszonych Rodzaje systemów Systemy osobiste, które nie są rozproszone i są przeznaczone do pracy na komputerze osobistym lub stacji roboczej. Przykładami takich systemów są
Bardziej szczegółowoSieci Komputerowe. Wykład 1: TCP/IP i adresowanie w sieci Internet
Sieci Komputerowe Wykład 1: TCP/IP i adresowanie w sieci Internet prof. nzw dr hab. inż. Adam Kisiel kisiel@if.pw.edu.pl Pokój 114 lub 117d 1 Kilka ważnych dat 1966: Projekt ARPANET finansowany przez DOD
Bardziej szczegółowoEJB 3.0 (Enterprise JavaBeans 3.0)
EJB 3.0 (Enterprise JavaBeans 3.0) Adrian Dudek Wirtualne Przedsiębiorstwo 2 Wrocław, 1 czerwca 2010 Plan prezentacji 1 Wprowadzenie Cel prezentacji Czym jest EJB 3.0? Historia 2 3 Cel prezentacji Wprowadzenie
Bardziej szczegółowoProgramowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz
Programowanie równoległe i rozproszone Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz 23 października 2009 Spis treści Przedmowa...................................................
Bardziej szczegółowoSieci komputerowe. Wykład 5: Warstwa transportowa: TCP i UDP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
Sieci komputerowe Wykład 5: Warstwa transportowa: TCP i UDP Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 5 1 / 22 Warstwa transportowa Cechy charakterystyczne:
Bardziej szczegółowoDokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV
Piotr Jarosik, Kamil Jaworski, Dominik Olędzki, Anna Stępień Dokumentacja wstępna TIN Rozproszone repozytorium oparte o WebDAV 1. Wstęp Celem projektu jest zaimplementowanie rozproszonego repozytorium
Bardziej szczegółowoPBS. Wykład Zabezpieczenie przełączników i dostępu do sieci LAN
PBS Wykład 7 1. Zabezpieczenie przełączników i dostępu do sieci LAN mgr inż. Roman Krzeszewski roman@kis.p.lodz.pl mgr inż. Artur Sierszeń asiersz@kis.p.lodz.pl mgr inż. Łukasz Sturgulewski luk@kis.p.lodz.pl
Bardziej szczegółowoSystemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy
Systemy operacyjne Systemy operacyjne Dr inż. Ignacy Pardyka Literatura Siberschatz A. i inn. Podstawy systemów operacyjnych, WNT, Warszawa Skorupski A. Podstawy budowy i działania komputerów, WKiŁ, Warszawa
Bardziej szczegółowoDokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy
Dokumentacja techniczna Młodzieżowe Pośrednictwo Pracy Spis Treści 1. Widok ogólny architektury MPP... 3 2. Warstwy systemu... 5 3. Struktura systemu/komponentów... 7 3.1 Aplikacje... 7 3.2 Biblioteki...
Bardziej szczegółowoPROTOKOŁY WARSTWY TRANSPORTOWEJ
PROTOKOŁY WARSTWY TRANSPORTOWEJ Na bazie protokołu internetowego (IP) zbudowane są dwa protokoły warstwy transportowej: UDP (User Datagram Protocol) - protokół bezpołączeniowy, zawodny; TCP (Transmission
Bardziej szczegółowoInstytut Teleinformatyki
Instytut Teleinformatyki Wydział Inżynierii Elektrycznej i Komputerowej Politechnika Krakowska programowanie usług sieciowych Dziedzina Unix laboratorium: 06 Kraków, 2014 06. Programowanie Usług Sieciowych
Bardziej szczegółowoDokumentacja aplikacji Szachy online
Projekt z przedmiotu Technologie Internetowe Autorzy: Jakub Białas i Jarosław Tyma grupa II, Automatyka i Robotyka sem. V, Politechnika Śląska Przedmiot projektu: Aplikacja internetowa w języku Java Dokumentacja
Bardziej szczegółowo5. Model komunikujących się procesów, komunikaty
Jędrzej Ułasiewicz str. 1 5. Model komunikujących się procesów, komunikaty Obecnie stosuje się następujące modele przetwarzania: Model procesów i komunikatów Model procesów komunikujących się poprzez pamięć
Bardziej szczegółowoSYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)
(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie
Bardziej szczegółowoSystem generacji raportów
Zalety systemu Czym jest ProReports? prostota instalacji, wieloplatformowość (AIX, Linux, Windows, Solaris), obsługa popularnych formatów (PDF, XLS, RTF, HTML,TXT,XML,CSV), obsługa wielu baz danych, raporty
Bardziej szczegółowoProjektowanie zabezpieczeń Centrów Danych oraz innych systemów informatycznych o podwyższonych wymaganiach bezpieczeństwa
Projektowanie zabezpieczeń Centrów Danych oraz innych systemów informatycznych o podwyższonych wymaganiach bezpieczeństwa dr inż. Mariusz Stawowski mariusz.stawowski@clico.pl Agenda Wprowadzenie Specyficzne
Bardziej szczegółowoINFORMATYKA Pytania ogólne na egzamin dyplomowy
INFORMATYKA Pytania ogólne na egzamin dyplomowy 1. Wyjaśnić pojęcia problem, algorytm. 2. Podać definicję złożoności czasowej. 3. Podać definicję złożoności pamięciowej. 4. Typy danych w języku C. 5. Instrukcja
Bardziej szczegółowoSieciowe Systemy Operacyjne
1 Sieciowe Systemy Operacyjne 1. Etapy rozwoju systemów komputerowych System scentralizowany System sieciowy System rozproszony 1.1 System scentralizowany Zastosowane duże komputery (mainframes ) Użytkownicy
Bardziej szczegółowoNarzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl
Narzędzia i aplikacje Java EE Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl Niniejsze opracowanie wprowadza w technologię usług sieciowych i implementację usługi na platformie Java EE (JAX-WS) z
Bardziej szczegółowoProgramowanie Komponentowe WebAPI
Programowanie Komponentowe WebAPI dr inż. Ireneusz Szcześniak jesień 2016 roku WebAPI - interfejs webowy WebAPI to interfejs aplikacji (usługi, komponentu, serwisu) dostępnej najczęściej przez Internet,
Bardziej szczegółowoRemote Quotation Protocol - opis
Remote Quotation Protocol - opis Michał Czerski 20 kwietnia 2011 Spis treści 1 Streszczenie 1 2 Cele 2 3 Terminologia 2 4 Założenia 2 4.1 Połączenie............................... 2 4.2 Powiązania z innymi
Bardziej szczegółowoKomunikacja międzyprocesowa. Krzysztof Banaś Systemy rozproszone 1
Komunikacja międzyprocesowa Krzysztof Banaś Systemy rozproszone 1 Komunikacja międzyprocesowa Dla funkcjonowania systemów rozproszonych konieczna jest sprawna komunikacja pomiędzy odległymi procesami Podstawowym
Bardziej szczegółowoWykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych
Wykład 2: Budowanie sieci lokalnych 1 Budowanie sieci lokalnych Technologie istotne z punktu widzenia konfiguracji i testowania poprawnego działania sieci lokalnej: Protokół ICMP i narzędzia go wykorzystujące
Bardziej szczegółowoSommerville, Ian: Software Engineering, edycja 9, rozdział 18
Sommerville, Ian: Software Engineering, edycja 9, rozdział 18 Problematyka systemów rozproszonych Co jest istotne w kontekście projektowania. Przetwarzanie typu klient serwer Jako podstawowy model systemu
Bardziej szczegółowoWywoływanie metod zdalnych
Wywoływanie metod zdalnych Podejście obiektowe do budowy systemów rozproszonych Wywoływanie metod zdalnych model systemu obiekt aplikacja kliencka interfejs serwer proxy szkielet sieć Istota podejścia
Bardziej szczegółowoINTERNET - Wrocław 2005. Usługi bezpieczeństwa w rozproszonych strukturach obliczeniowych typu grid
Usługi bezpieczeństwa w rozproszonych strukturach obliczeniowych typu grid Bartłomiej Balcerek Wrocławskie Centrum Sieciowo-Superkomputerowe Plan prezentacji Podstawowe pojęcia z dziedziny gridów Definicja
Bardziej szczegółowoOd uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.
Kod szkolenia: Tytuł szkolenia: PS/LINUX Programowanie systemowe w Linux Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemie Linux, którzy chcą poznać
Bardziej szczegółowo1 Wprowadzenie do J2EE
Wprowadzenie do J2EE 1 Plan prezentacji 2 Wprowadzenie do Java 2 Enterprise Edition Aplikacje J2EE Serwer aplikacji J2EE Główne cele V Szkoły PLOUG - nowe podejścia do konstrukcji aplikacji J2EE Java 2
Bardziej szczegółowo1. Model klient-serwer
1. 1.1. Model komunikacji w sieci łącze komunikacyjne klient serwer Tradycyjny podziała zadań: Klient strona żądająca dostępu do danej usługi lub zasobu Serwer strona, która świadczy usługę lub udostępnia
Bardziej szczegółowoWątek - definicja. Wykorzystanie kilku rdzeni procesora jednocześnie Zrównoleglenie obliczeń Jednoczesna obsługa ekranu i procesu obliczeniowego
Wątki Wątek - definicja Ciąg instrukcji (podprogram) który może być wykonywane współbieżnie (równolegle) z innymi programami, Wątki działają w ramach tego samego procesu Współdzielą dane (mogą operować
Bardziej szczegółowo1. Etapy rozwoju systemów komputerowych
1 Sieciowe Systemy Operacyjne Wprowadzenie do wykładu, podstawowe definicje, rola 1 systemu operacyjnego Procesy POSIX, zarządzanie procesami 2 Pliki, komunikacja przez pliki, blokowanie 1 Łącza nazwane
Bardziej szczegółowoAKADEMIA GÓRNICZO-HUTNICZA. Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki KATEDRA INFORMATYKI. SyncFile
AKADEMIA GÓRNICZO-HUTNICZA Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki KATEDRA INFORMATYKI Document wizyjny dla projektu Wersja 0.1-5 z dnia 2006-11-14 Kierunek, rok studiów: Informatyka,
Bardziej szczegółowoKONCEPCJA WYKORZYSTANIA TECHNOLOGII APPLET- JAVA W TWORZENIU
KONCEPCJA WYKORZYSTANIA TECHNOLOGII APPLET- JAVA W TWORZENIU TORINGU PRZEMIESZCZA I ICH WIZUALIZACJI NA MAPIE CYFROWEJ 05-130 Zegrze, ul. Warszawska 22A Appletu przy projektowaniu i tworzeniu systemu Applet-
Bardziej szczegółowoZadanie 2: transakcyjny protokół SKJ (2015)
Zadanie 2: transakcyjny protokół SKJ (2015) 1 Wstęp Zadanie polega na zaprojektowaniu niezawodnego protokołu transakcyjnego bazującego na protokole UDP. Protokół ten ma być realizowany przez klasy implementujące
Bardziej szczegółowoRodzaje pamięci masowych by Silas Mariusz
Rodzaje pamięci masowych by Silas Mariusz 1. Online Silas Mariusz Administrator TS-x79U 1 GbE Pamięć masowa może być instalowana bezpośrednio w serwerach w postaci dysków tworzących tzw. system DAS (Direct
Bardziej szczegółowoREFERAT PRACY DYPLOMOWEJ
REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany
Bardziej szczegółowoProjektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34
Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34 Projektowanie oprogramowania cd. 2/34 Modelowanie CRC Modelowanie CRC (class-responsibility-collaborator) Metoda identyfikowania poszczególnych
Bardziej szczegółowoWybrane działy Informatyki Stosowanej
Wybrane działy Informatyki Stosowanej Java Enterprise Edition WebServices Serwer aplikacji GlassFish Dr hab. inż. Andrzej Czerepicki a.czerepicki@wt.pw.edu.pl http://www2.wt.pw.edu.pl/~a.czerepicki Aplikacje
Bardziej szczegółowoAutorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny?
Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA Dlaczego DNS jest tak ważny? DNS - System Nazw Domenowych to globalnie rozmieszczona usługa Internetowa. Zapewnia tłumaczenie nazw domen
Bardziej szczegółowoProtokoły sieciowe model ISO-OSI Opracował: Andrzej Nowak
Protokoły sieciowe model ISO-OSI Opracował: Andrzej Nowak OSI (ang. Open System Interconnection) lub Model OSI to standard zdefiniowany przez ISO oraz ITU-T, opisujący strukturę komunikacji sieciowej.
Bardziej szczegółowoLaboratorium Sieci Komputerowych - 2
Laboratorium Sieci Komputerowych - 2 Analiza prostych protokołów sieciowych Górniak Jakub Kosiński Maciej 4 maja 2010 1 Wstęp Zadanie polegało na przechwyceniu i analizie komunikacji zachodzącej przy użyciu
Bardziej szczegółowoProgramowanie rozproszone w języku Java
Wstęp Gniazda RMI Podsumowanie Programowanie rozproszone w języku Java Wojciech Rząsa wrzasa@prz-rzeszow.pl Katedra Informatyki i Automatyki, Politechnika Rzeszowska 25 maja 2015 Wojciech Rząsa, KIiA PRz
Bardziej szczegółowoPrzetwarzanie danych w chmurze
Materiały dydaktyczne Katedra Inżynierii Komputerowej Przetwarzanie danych w chmurze Modele przetwarzania w chmurze dr inż. Robert Arsoba Robert.Arsoba@weii.tu.koszalin.pl Koszalin 2017 Wersja 1.0 Modele
Bardziej szczegółowoIntegracja komunikatora opartego o protokół XMPP z dużym portalem internetowym
Integracja komunikatora opartego o protokół XMPP z dużym portalem internetowym Janusz Dziemidowicz nasza-klasa.pl PLNOG 10-11 września 2009 Spis rzeczy XMPP i ejabberd XMPP Erlang ejabberd XMPP a HTTP
Bardziej szczegółowoZaawansowane programowanie w języku C++
Kod szkolenia: Tytuł szkolenia: C/ADV Zaawansowane programowanie w języku C++ Dni: 3 Opis: Uczestnicy szkolenia zapoznają się z metodami wytwarzania oprogramowania z użyciem zaawansowanych mechanizmów
Bardziej szczegółowoOSGi Agata Hejmej 4.05.2009
OSGi Agata Hejmej 4.05.2009 Plan prezentacji Co to jest OSGi Jakie problemy rozwiązuje Opis standardu Przykładowa aplikacja Podsumowanie korzyści Co to jest OSGi? Standard, który pozwala na tworzenie wysoce
Bardziej szczegółowoSieci równorzędne, oraz klient - serwer
Sieci równorzędne, oraz klient - serwer podział sieci ze względu na udostępnianie zasobów: równorzędne, peer-to-peer, P2P, klient/serwer, żądanie, odpowiedź, protokół sieciowy, TCP/IP, IPX/SPX, admin sieciowy,
Bardziej szczegółowoInstrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia
Instrukcja 3 Laboratoria 3, 4 Specyfikacja wymagań funkcjonalnych za pomocą diagramu przypadków użycia 1 Cel laboratoriów: Specyfikacja wymagań, zdefiniowanych w ramach laboratorium 2 (wg instrukcji 2),
Bardziej szczegółowoPlatformy Programistyczne Zagadnienia sieciowe i wątki
Platformy Programistyczne Zagadnienia sieciowe i wątki Agata Migalska 27/28 maja 2014 Komunikacja sieciowa 1 Komunikacja sieciowa 2 Wiele wątków 3 Serializacja Architektura typu klient-serwer Architektura
Bardziej szczegółowoPodstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 13 Topologie sieci i urządzenia
Podstawy Informatyki Inżynieria Ciepła, I rok Wykład 13 Topologie sieci i urządzenia Topologie sieci magistrali pierścienia gwiazdy siatki Zalety: małe użycie kabla Magistrala brak dodatkowych urządzeń
Bardziej szczegółowoBeamYourScreen Bezpieczeństwo
BeamYourScreen Bezpieczeństwo Spis treści Informacje Ogólne 3 Bezpieczeństwo Treści 3 Bezpieczeństwo Interfejsu UŜytkownika 3 Bezpieczeństwo Infrastruktury 3 Opis 4 Aplikacja 4 Kompatybilność z Firewallami
Bardziej szczegółowoPlan wykładu. Domain Name System. Hierarchiczna budowa nazw. Definicja DNS. Obszary i ich obsługa Zapytania Właściwości.
Sieci owe Sieci owe Plan wykładu Domain Name System System Nazw Domen Definicja DNS Hierarchiczna budowa nazw Obszary i ich obsługa Zapytania Właściwości Sieci owe Sieci owe Definicja DNS DNS to rozproszona
Bardziej szczegółowoProgramowanie współbieżne i rozproszone
Programowanie współbieżne i rozproszone WYKŁAD 1 dr inż. Literatura ogólna Ben-Ari, M.: Podstawy programowania współbieżnego i rozproszonego. Wydawnictwa Naukowo-Techniczne, Warszawa, 2009. Czech, Z.J:
Bardziej szczegółowoWypożyczalnia VIDEO. Technologie obiektowe
Wypożyczalnia VIDEO Jest to program do obsługi wypożyczalni i wypożyczeń klientów. Głównym zadaniem programu jest zarządzanie wypożyczeniami i drukowanie potwierdzenia wypożyczenia oraz naliczenie punktów
Bardziej szczegółowoObliczenia rozproszone MPI
Obliczenia rozproszone MPI 1. Informacje ogólne MPI (Message Passing Interface) nazwa standardu biblioteki przesyłania komunikatów dla potrzeb programowania równoległego w sieciach rozproszonych. Aktualna
Bardziej szczegółowoOd uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.
Kod szkolenia: Tytuł szkolenia: PS/WIN Programowanie systemowe w Windows Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do programistów tworzących aplikacje w systemach z rodziny Microsoft Windows,
Bardziej szczegółowoPrzesyłania danych przez protokół TCP/IP
Przesyłania danych przez protokół TCP/IP PAKIETY Protokół TCP/IP transmituje dane przez sieć, dzieląc je na mniejsze porcje, zwane pakietami. Pakiety są często określane różnymi terminami, w zależności
Bardziej szczegółowoMonitorowanie Sieci nonblocking content packet filtering
Monitorowanie Sieci nonblocking content packet filtering praca inŝynierska prowadzący: prof. dr hab. inŝ. Zbigniew Kotulski Michał Zarychta 1 Plan prezentacji ZałoŜenia projektu Sniffer Technologie WinPcap
Bardziej szczegółowoSYSTEMY OPERACYJNE WYKLAD 6 - wątki
Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 6 - wątki Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 PLAN: 1. Wątki 2. Planowanie przydziału procesora (szeregowanie
Bardziej szczegółowoWelcome to the waitless world. Inteligentna infrastruktura systemów Power S812LC i S822LC
Inteligentna infrastruktura systemów Power S812LC i S822LC Przedstawiamy nową linię serwerów dla Linux Clouds & Clasters IBM Power Systems LC Kluczowa wartość dla klienta Specyfikacje S822LC Technical
Bardziej szczegółowoTworzenie i obsługa wirtualnego laboratorium komputerowego
Uniwersytet Mikołaja Kopernika Wydział Fizyki, Astronomii i Informatyki Stosowanej Michał Ochociński nr albumu: 236401 Praca magisterska na kierunku informatyka stosowana Tworzenie i obsługa wirtualnego
Bardziej szczegółowoDane bezpieczne w chmurze
Dane bezpieczne w chmurze Grzegorz Śladowski Dyrektor Działu Technicznego S4E S.A. Agenda Chmura definicja, zasady działania, rodzaje Cechy bezpiecznej chmury Architektura Chmura - definicja Model przetwarzania
Bardziej szczegółowo