CHMUROWY SYSTEM WEBOWY GWARANTUJĄCY CZAS OBSŁUGI A CLOUD-BASED WEB SYSTEM WITCH GUARANTEE SERVICE TIME

Podobne dokumenty
Przetwarzanie danych w chmurze

Chmura obliczeniowa. Sieci komputerowe laboratorium A1 (praca grupowa w chmurze)

CLOUD COMPUTING CHMURA OBLICZENIOWA I PLATFORMA WINDOWS AZURE

Mateusz Kurleto NEOTERIC. Analiza projektu B2B Kielce, 18 października 2012

Hosting aplikacji on-line

Przetwarzanie danych w chmurze

Przetwarzanie i zabezpieczenie danych w zewnętrznym DATA CENTER

Dokumentacja wstępna TIN. Rozproszone repozytorium oparte o WebDAV

Cloud Computing - Wprowadzenie. Bogusław Kaczałek Kon-dor GIS Konsulting

Procesy dynamiczne BPM+SOA+CLOUD. Mariusz Maciejczak

Dane bezpieczne w chmurze

REFERAT PRACY DYPLOMOWEJ

Dwuwymiarowy sposób na podróbki > 34

Chmura nad Smart City. dr hab. Prof. US Aleksandra Monarcha - Matlak

Co to jest chmura (Cloud Computing)?

Bezpieczeństwo dla wszystkich środowisk wirtualnych

Problemy niezawodnego przetwarzania w systemach zorientowanych na usługi

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15 Artur.Kalinowski@fuw.edu.

Arkadiusz Rajs Agnieszka Goździewska-Nowicka Agnieszka Banaszak-Piechowska Mariusz Aleksiewicz. Nałęczów, 20lutego 2014

Joanna Baranowska. Chmura obliczeniowa w samorządach korzyści i wyzwania

LANDINGI.COM. Case Study. Klient Landingi.com. Branża IT, marketing i PR. Okres realizacji od grudnia 2013 do chwili obecnej.

Spis treści. Wstęp... 11

CSA STAR czy można ufać dostawcy

Architektury usług internetowych. Tomasz Boiński Mariusz Matuszek

Szanse i zagrożenia płynące z nowoczesnych metod świadczenia usług informatycznych (outsourcing, offshoring, SOA, cloud computing) w bankowości

CHMURA OBLICZENIOWA (CLOUD COMPUTING)

Prestige MJM Case Study

BEZPIECZNIE NIEZAWODNIE PROFESJONALNIE.

CloudFerro. Chmury publiczne, chmury prywatne, serwery dedykowane zalety, wady, problemy, ograniczenia, wyzwania.

Czy cloud computing to sposób na rozwiązanie problemu piractwa?

Klient SmartMedia Sp. z o.o., Dziennikus Sp. z o.o. Branża. IT, software. Okres realizacji. Lipiec nadal. Rodzaj usługi:

HP Service Anywhere Uproszczenie zarządzania usługami IT

Szczegółowy opis przedmiotu zamówienia:

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

Cel szkolenia. Konspekt. About this Course

CLOUD ADOPTION PROGRAM

SOA Web Services in Java

Tom 6 Opis oprogramowania

Cleeng Case Study. Klient Cleeng. Branża. Okres realizacji. Zakres usługi: Consulting. Projekt i wdrożenie Chmury AWS. Zarządzanie chmurą

USŁUGI HIGH PERFORMANCE COMPUTING (HPC) DLA FIRM. Juliusz Pukacki,PCSS

Piotr Krząkała. Dyrektor Handlowy ds. Kluczowych Klientów

Łatwe w obsłudze narzędzie ochrony danych w środowiskach wirtualnych STORWARE.EU

Modele sprzedaży i dystrybucji oprogramowania Teoria a praktyka SaaS vs. BOX. Bartosz Marciniak. Actuality Sp. z o.o.

Praca klienta biura rachunkowego na wspólnej bazie

Autorytatywne serwery DNS w technologii Anycast + IPv6 DNS NOVA. Dlaczego DNS jest tak ważny?

Parametry wydajnościowe systemów internetowych. Tomasz Rak, KIA

Zarządzanie infrastrukturą IT

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

ADMINISTRACJA PUBLICZNA W CHMURZE OBLICZENIOWEJ

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

"System CC1 jak zbudować prywatną chmurę obliczeniową w jedno popołudnie. M. Witek, M. Zdybał w imieniu CC1

Zastosowanie Oracle Designer/2000 do projektowania i implementacji aplikacji WWW

Budowa Data Center. Zmagania Inwestora. Konferencja. 30 października 2014

EtiNET Projekt platformy internetowej dla studentów kierunku edukacja techniczno-informatyczna

Zapewnienie dostępu do Chmury

PRZEWODNIK PO PRZEDMIOCIE

BCC Data Centers. Oferta: Outsourcing IT, cloud computing Optymalizacja i bezpieczeństwo IT. Tytuł prezentacji 1

ZAŁOŻENIA TECHNICZNO-TECHNOLOGICZNE SYSTEMU BUDOWANEGO W RAMACH PROJEKTU

Projekt dotyczy stworzenia zintegrowanego, modularnego systemu informatycznego wspomagającego zarządzanie pracownikami i projektami w firmie

Lekcja 5. Funkcje handlemessage() i initialize(), konstruktor i destruktor

MASKI SIECIOWE W IPv4

Założenia projektowe dla zapytania ofertowego EAK_ZA_01/2015

Architektura chmur i wirtualizacja. Wykład 2 Klasyfikacja chmur i usług

MONIKA SZA KOWSKA-STRZELECKA

>>> >>> Ćwiczenie. Cloud computing

Przewodnik cloud computing

Azure, czyli chmura od Microsoft.

Koszty budowy infrastruktury wewnętrznej: hardware, administracja, zespół utrzymaniowy

Przetwarzanie w chmurze - opis przedmiotu

Kraków Wrocław Poznań Warszawa Gdańsk CLOUD SERVICES & DATA CENTER

Arkadiusz Kawa Uniwersytet Ekonomiczny w Poznaniu. Gospodarka Materiałowa i Logistyka 2012/12. Koncepcja chmury danych w firmach logistycznych

Wydział Informatyki, Elektroniki i Telekomunikacji. Katedra Informatyki

B2BCloud simple way to Scale Sale

Internet przedmiotów - opis przedmiotu

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Modelowanie i analiza systemów informatycznych

Web frameworks do budowy aplikacji zgodnych z J2EE

Wirtualizacja sieci - VMware NSX

Definicja, rodzaje chmur obliczeniowych oraz poziomy usług

Zastosowanie chmury obliczeniowej w diagnostyce dróg

P13 Wytyczne dla dostawców aplikacji

Kolokacja, hosting, chmura O czym powinny pamiętać strony umowy? Maciej Potoczny

Zdalne logowanie do serwerów

KATALOG MASZYN I POJAZDÓW ROLNICZYCH MASZYNY-3

Optymalna Chmura. Właściwy kierunek dla Twojego biznesu

Załącznik Nr 4 do Zapytania Ofertowego Szczegółowy opis przedmiotu zamówienia (część jawna) Zapytanie ofertowe nr 1/ /RPPK

Wybrane działy Informatyki Stosowanej

Współczesna problematyka klasyfikacji Informatyki

SPIS TREŚCI. Wstęp... 9

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Egzamin / zaliczenie na ocenę*

FOCUS TELECOM POLSKA SP. Z O.O. Materiał Informacyjny

Proponowana architektura ZPT

Regulamin Dierżawa serwerów dedykowanych i VPS Data aktualizacji: r. / Wersja

KONCEPCJA ZASTOSOWANIA INTELIGENTNYCH SYSTEMÓW TRANSPORTOWYCH W DZIELNICY MOKOTÓW W WARSZAWIE

OFFICE ADFS - POŁĄCZENIE KORZYŚCI ROZWIĄZAŃ CHMUROWYCH I CENTRALNEGO ZARZĄDZANIA

Aurea BPM Dokumenty pod kontrolą

Prawne aspekty wykorzystania chmury obliczeniowej w administracji publicznej. Michał Kluska

Transkrypt:

STUDIA INFORMATICA 2017 Volume 38 Number 4 (138) Maciej PŁATEK, Krzysztof ZATWARNICKI Politechnika Opolska, Instytut Automatyki i Informatyki CHMUROWY SYSTEM WEBOWY GWARANTUJĄCY CZAS OBSŁUGI Streszczenie. W artykule opisano koncepcję systemu gwarantującego obsługę żądań w chmurowym systemie chmury obliczeniowej, uwzględniającego podejście minimalizujące koszty poniesione przez dostawcę usługi chmurowej. Słowa kluczowe: system chmurowy, gwarantowanie obsługi żądań A CLOUD-BASED WEB SYSTEM WITCH GUARANTEE SERVICE TIME Summary. This paper describes the concept of system guaranteeing service of request in cloud computing system which is taking into account the approach to minimize costs incurred by cloud vendor. Keywords: Cloud computing system, guarantee service of requests 1. Wprowadzenie Internet towarzyszy życiu człowieka praktycznie w każdym jego aspekcie. Spowodowało to znaczący wzrost prac nad stabilnością i niezawodnością systemów Webowych, które potrafią obsługiwać duże liczby nadchodzących żądań od użytkowników. Aktualnie, by to osiągnąć, tworzone są systemy na podstawie chmur obliczeniowych. Chmury obliczeniowe to model przetwarzania danych oparty na rozbudowanej infrastrukturze, dostarczany zazwyczaj jako usługa przez zewnętrzne ośrodki. Wszystkie aspekty systemu są dostosowywane przez dostawcę usługi chmurowej. Od dostawcy zależy, jaki typ systemu zostanie udostępniony

130 M. Płatek, K. Zatwarnicki klientowi oraz jakie zadania będzie on spełniał. Główny podział chmur obliczeniowych został dokonany na podstawie tego, w jaki sposób dostarczana jest usługa dla klienta [6]: 1) IaaS (ang. Infrastructure as a Service) Infrastruktura jako usługa, model dostarczający klientowi całej infrastruktury informatycznej, tzn. sprzętu, oprogramowania, serwerów wirtualnych oraz serwisowania. Najczęściej dostawca oferuje klientowi konkrety przydział mocy obliczeniowej lub pamięci. 2) PaaS (ang. Platform as a Service) Platforma jako usługa, w tym przypadku dostawca przekazuje klientowi komplet aplikacji lub środowisko gotowe do pełnienia funkcji wymaganej przez niego. Klient uzyskuje dostęp do zasobów poprzez dowolny komputer połączony z Internetem. 3) SaaS (ang. Software as a Service) Oprogramowanie jako usługa, klient otrzymuje konkretną funkcjonalność i oprogramowanie spełniające jego aktualne wymagania. Najczęściej funkcjonalności są od siebie odseparowane i nie posiadają wspólnego interfejsu użytkownika. Systemy Webowe należą do kategorii SaaS. Każda strona WWW zamieszczona w chmurze obliczeniowej jest traktowana jako odizolowane oprogramowanie. Kluczowym zadaniem w tego typu systemie jest dostosowanie go pod względem przepustowości, dostępności oraz czasu obsługi do wymagań klienta [1-4]. W literaturze opisywane są systemy, które oferują minimalizowanie czasu obsługi żądania zarówno dla całych stron, jak i pojedynczych żądań [4, 7, 8]. Brak jest projektów systemów, które gwarantują czas obsługi żądań jednocześnie, w przypadku gdy nie jest to możliwe, minimalizują straty finansowe dostawcy usługi chmurowej. W artykule przedstawiono propozycję systemu opartego na modelu chmury obliczeniowej, korzystającego z elementów rozwiązania wykorzystanego w systemie MLF (ang. Most loaded first) [5]. System ten został przedstawiony w poprzednich pracach, gdzie zostało potwierdzone jego działanie zarówno w środowisku symulacyjnym, jak i po implementacji na rzeczywistych serwerach. Elementy systemu MLF zostaną wykorzystane do zagwarantowania czasu obsługi każdego pojedynczego żądania przychodzącego do klienta odczytującego stronę WWW. Dodatkowo zaproponowano podejście kosztowe do obsługi żądań, które w przypadku niedotrzymania czasów obsługi żądania zminimalizuje koszty poniesione przed dostawcę usługi chmurowej. Założono, że niektóre obiekty na stronie WWW są ważniejsze i ich dostarczenie jest kluczowe, są to pliki HTML zawierające szkielet strony WWW. Mniej ważne są obiekty zagnieżdżone w dokumencie HTML definiującym stronę WWW, np. obrazki. Podejście kosztowe sprawia, że dostawca usług w chmurze w przypadku niedostarczenia gwarantowanego żądania w czasie będzie musiał wnieść opłatę karną dla klienta zależną od typu żądanego elementu.

Chmurowy system webowy gwarantujący czas obsługi 131 2. Architektura systemu System składa się z klientów wysyłających żądania, pośrednika strefowego wybierającego strefę, złożonego z pośrednika lokalnego oraz serwerów mogących obsłużyć żądania użytkowników, całość została przedstawiona na rys. 1. Każdy z serwerów na końcowym etapie obsługi żądania jest kompletnym elementem posiadającym wszystko, by móc dostarczyć klientowi dowolny element strony WWW. Zadaniem pośrednika strefowego jest wybór strefy, w której znajduje się serwer mogący obsłużyć żądanie w czasie tmax, który system gwarantuje dla tego typu elementu. Pośrednik lokalny, znajdujący się w strefie, ma za zadanie kolejkowanie żądań oraz dystrybucję ich do odpowiedniego serwera. Kluczowa jest komunikacja pomiędzy pośrednikiem strefowym i pośrednikiem lokalnym. Zakłada się, że serwery pośredniczące mają dostęp do tego samego zestawu danych. Rys. 1. Architektura proponowanego systemu Fig. 1. Architecture of proposed system Najważniejszymi elementami, które w głównej mierze odpowiadają za gwarancję czasu obsługi, są oba serwery pośredniczące. Pośrednik strefowy jako pierwszy odbiera żądania od użytkownika. Następnie nawiązuje komunikację z pośrednikami lokalnymi, zlokalizowanymi w każdej ze stref wchodzących w skład systemu w celu znalezienia strefy, w której znajduje

132 M. Płatek, K. Zatwarnicki się serwer mogący obsłużyć dane żądanie w czasie th mniejszym niż gwarantowane tmax. By to określić, sprawdzane jest obciążenie każdej ze stref. Obciążenie definiowane jest jako suma liczby aktualnie obsługiwanych żądań na wszystkich serwerach wchodzących w skład strefy. Następnie strefy są szeregowane malejąco według obciążeń i według tej kolejności sprawdzane. Sprawdzanie odbywa się do momentu odnalezienia najbardziej obciążonej strefy, mogącej obsłużyć żądanie w wymaganym czasie. Po poprawnym odnalezieniu strefy żądanie przekazywane jest do pośrednika lokalnego. Pośrednik lokalny jest elementem bazującym na wcześniejszych pracach [5]. Podzielony jest na dwie logiczne sekcje sekcję kolejkującą oraz sekcję przełączającą. Pierwsza, kolejkująca, odpowiedzialna jest za kolejkowanie żądań, natomiast druga pełni rolę dystrybutora żądań do serwerów WWW. Schemat przełącznika przedstawiono na rys. 2. Rys. 2. Przełącznik lokalny Fig. 2. Local switch Część kolejkująca składa się z trzech modułów: modułu analizującego, modułu serwisu oraz modułu kolejki. Po przyjęciu przez przełącznik lokalny żądania pochodzącego od klienta, kierowane jest ono do modułu analizującego, gdzie pobierane są następujące informacje: adres obiektu ai oraz identyfikator klienta c. Po otrzymaniu wszystkich informacji moduł serwisowy wylicza termin d, określający, kiedy powinna zacząć się obsługa żądania oraz termin di, określający moment, w którym obsługa żądania powinna się skończyć. Po wyliczeniu terminu d moduł kolejkujący szereguje żądania, zgodnie z polityką EDF (ang. Earliest deadline first), czyli od najbliższego terminu. By móc spełnić wymaganie systemu, mające minimalizować poniesione koszty, zakłada się, że opłata karna za elementy niedostarczone w odpowiednim czasie jest zależna od typu żądanego obiektu. Największa opłata karna będzie poniesiona za pliki definiujące jej strukturę, czyli dokumenty HTML,

Chmurowy system webowy gwarantujący czas obsługi 133 a najmniejsza za statyczne obiekty zagnieżdżone na stronie. Schemat kolejki przedstawiono na rys. 3. Rys. 3. Schemat kolejki Fig. 3. Queue schema Po sprawdzeniu, w którym miejscu w kolejce ma się znaleźć żądanie, weryfikowane jest, czy opóźnione w ten sposób zakolejkowane żądania będą w stanie dotrzymać terminu d. Jeżeli nie zostaną one opóźnione, żądanie umieszczane jest w wyznaczonym miejscu. Jeśli miałyby zostać opóźnione, porównywane są koszty opóźnienia kolejkowanego żądania k 2 oraz koszty opóźnienia kolejnych żądań k 1. Jeżeli k 2 > k 1, to zadanie jest umieszczane w wyznaczonym miejscu, w przeciwnym razie przesuwane jest miejsce docelowego umieszczenia kolejkowanego żądania i weryfikacja odbywa się ponownie. Weryfikacja kończy się, gdy k 2 > k 1. Moduł serwisu składa się z modelu strony, bazy czasów obsługi, modułu estymującego i modułu adaptacyjnego, schemat przedstawiono na rys. 4. Model strony przechowuje informacje o czasach obsługi konkretnych elementów strony. Moduł estymujący, używając informacji z modelu strony, wylicza terminy d i i ' d i. Moduł adaptacyjny jest odpowiedzialny za adaptację informacji. Czas obsługi każdego żądania jest do niego przesyłany po opuszczeniu kolejki. W kolejnym kroku żądanie przekazywane jest do sekcji przełączającej, która składa się z modułu wykonawczego, modułu decyzyjnego oraz modeli serwerów, których liczba jest równa liczbie rzeczywistych jednostek w danej strefie systemu. Modele serwerów są odpowiedzialne za estymowanie czasu obsługi dla danego serwera.

134 M. Płatek, K. Zatwarnicki Moduł decyzyjny wybiera serwer, na którym ma zostać przeprowadzona obsługa danego żądania. Wybierany jest najbardziej obciążony serwer, gdzie obciążenie jest liczbą aktualnie obsługiwanych żądań, który może obsłużyć żądanie, by dotrzymać terminu d. Rys. 4. Moduł serwisu Fig. 4. Service module Jeżeli taki serwer jest niedostępny, to wybierany jest serwer, który obsłuży żądanie najszybciej. Dzięki takiemu rozwiązaniu serwery o niskich indeksach są najbardziej obciążone, ale nadal są w stanie obsługiwać żądania, a serwery o wysokich indeksach są w stanie zawsze obsłużyć żądanie w krótkim czasie. Obciążenie serwerów jest utrzymywane na poziomie 80% maksymalnej mocy obliczeniowej. Po podjęciu decyzji moduł wykonawczy przekazuje żądanie do wybranego serwera. Moduł ten jest również odpowiedzialny za zbieranie informacji o mierzonym czasie obsługi, który służy do aktualizacji informacji w pozostałych modułach. 3. Podsumowanie System bazuje na wcześniejszych pracach, których poprawne działanie zostało poparte badaniami, więc przedstawiona propozycja systemu może być podstawą do dalszych prac nad gwarantowaniem czasu obsługi żądań w systemach chmur obliczeniowych. Dodatkowo po-

Chmurowy system webowy gwarantujący czas obsługi 135 dejście kosztowe jest nowym elementem i może prowadzić do udoskonalenia procesu gwarancji czasu obsługi. Dalsze prace będą skupione na weryfikacji przedstawionej propozycji oraz konstrukcji algorytmów obsługi części modułów. Najważniejszym elementem będzie zaprojektowanie modeli serwerów w taki sposób, by pozwalały spełnić założenia funkcjonalne systemu. W kolejnym kroku należy zaprojektować algorytm kolejki, który będzie minimalizował koszty według zadanego problemu. W końcowym etapie system zostanie zaimplementowany w środowisku testowym. BIBLIOGRAFIA 1. Kaur B.: Software As A Service: A Brief Study. International Research Journal of Engineering and Technology, Volume 2. 2. Amazon.: A Practical Guide to Cloud Migration Migrating Services to AWS. 2015-12-1, dostęp: 2016-07-15, https://aws.amazon.com/whitepapers/ 3. Amazon.: Software as a service (Saas) on AWS. dostęp: 2016-07-15, https://aws.amazon.com/whitepapers/ 4. Amazon: Web Application Hosting in the AWS Cloud. 2012, dostęp: 2016-07-15, https://aws.amazon.com/whitepapers/ 5. Zatwarnicki K., Płatek M. Zatwarnicka A.: A Cluster-Based Quality Aware Web System, Information Systems Architecture and Technology. Proceedings of 36 th International Conference on Information Systems Architecture and Technology ISAT 2015 Part II, Springer, 2016, p. 15 24. 6. Voda I.: Migrating Existing PHP Web Applications to the Cloud, Informatica Economica, Vol 18. 7. Google Cloud Platform for AWS Professionals, https://cloud.google.com/docs/compare/aws/, dostęp 2017-11-24. 8. Google Cloud Platform for Azure Professionals, https://cloud.google.com/docs/compare/aws/, dostęp 2017-11-24.

136 M. Płatek, K. Zatwarnicki Abstract This paper presents the proposal of system which will guarantee service time of requests in cloud computing system. Proposed system is based on previous work and expand its idea into cloud computing. It also offer new approach to queuing requests, by minimizing costs incurred by cloud system vendors. First section of the article discusses problem of servicing users requests in Web systems and describes basics about cloud computing. Next section provides information about proposed system with schemas and description of every module in the system. The third section sums up provided information and presents future work. Adres Maciej PŁATEK: Politechnika Opolska, Instytut Automatyki i Informatyki, ul. Prószkowska 76, 45-758 Opole, Polska, mac.platek@doktorant.po.edu.pl Krzysztof ZATWARNICKI: Politechnika Opolska, Instytut Automatyki i Informatyki, ul. Prószkowska 76, 45-758 Opole, Polska, k.zatwarnicki@po.opole.pl