PRIMJENA RAČUNA REDOVA ČEKANJA POMOĆU ERLANG DISTRIBUCIJA ZA WEB APLIKACIJE. Dubravko Miljković Hrvatska elektroprivreda Zagreb, Vukovarska 37

Σχετικά έγγραφα
18. listopada listopada / 13

OSNOVE TEHNOLOGIJE PROMETA

3.1 Granična vrednost funkcije u tački

ELEKTROTEHNIČKI ODJEL

DISKRETNA MATEMATIKA - PREDAVANJE 7 - Jovanka Pantović

RIJEŠENI ZADACI I TEORIJA IZ

Kaskadna kompenzacija SAU

2 tg x ctg x 1 = =, cos 2x Zbog četvrtog kvadranta rješenje je: 2 ctg x

IZRAČUNAVANJE POKAZATELJA NAČINA RADA NAČINA RADA (ISKORIŠĆENOSTI KAPACITETA, STEPENA OTVORENOSTI RADNIH MESTA I NIVOA ORGANIZOVANOSTI)

Strukture podataka i algoritmi 1. kolokvij 16. studenog Zadatak 1

Eliminacijski zadatak iz Matematike 1 za kemičare

Elektrotehnički fakultet univerziteta u Beogradu 17.maj Odsek za Softversko inžinjerstvo

numeričkih deskriptivnih mera.

INTEGRALNI RAČUN. Teorije, metodike i povijest infinitezimalnih računa. Lucija Mijić 17. veljače 2011.

UNIVERZITET U NIŠU ELEKTRONSKI FAKULTET SIGNALI I SISTEMI. Zbirka zadataka

Osnovni primer. (Z, +,,, 0, 1) je komutativan prsten sa jedinicom: množenje je distributivno prema sabiranju

M086 LA 1 M106 GRP. Tema: Baza vektorskog prostora. Koordinatni sustav. Norma. CSB nejednakost

Zadaci sa prethodnih prijemnih ispita iz matematike na Beogradskom univerzitetu

Riješeni zadaci: Nizovi realnih brojeva

TRIGONOMETRIJSKE FUNKCIJE I I.1.

(P.I.) PRETPOSTAVKA INDUKCIJE - pretpostavimo da tvrdnja vrijedi za n = k.

Betonske konstrukcije 1 - vežbe 3 - Veliki ekscentricitet -Dodatni primeri

BETONSKE KONSTRUKCIJE 2

Trigonometrija 2. Adicijske formule. Formule dvostrukog kuta Formule polovičnog kuta Pretvaranje sume(razlike u produkt i obrnuto

Ispitivanje toka i skiciranje grafika funkcija

Matematička analiza 1 dodatni zadaci

Izbor statističkih testova Ana-Maria Šimundić

PRAVA. Prava je u prostoru određena jednom svojom tačkom i vektorom paralelnim sa tom pravom ( vektor paralelnosti).

( , 2. kolokvij)

radni nerecenzirani materijal za predavanja R(f) = {f(x) x D}

Iskazna logika 3. Matematička logika u računarstvu. novembar 2012

5. Karakteristične funkcije

Linearna algebra 2 prvi kolokvij,

Operacije s matricama

STATISTIKA S M E I M N I AR R 7 : METODE UZORKA

Elektrotehnički fakultet univerziteta u Beogradu 16.maj Odsek za Softversko inžinjerstvo

a M a A. Može se pokazati da je supremum (ako postoji) jedinstven pa uvodimo oznaku sup A.

TEORIJA REPOVA/REDOVA (queueing theory)

Sume kvadrata. mn = (ax + by) 2 + (ay bx) 2.

OSNOVE TEHNOLOGIJE PROMETA

IZVODI ZADACI ( IV deo) Rešenje: Najpre ćemo logaritmovati ovu jednakost sa ln ( to beše prirodni logaritam za osnovu e) a zatim ćemo

Numerička matematika 2. kolokvij (1. srpnja 2009.)

Cauchyjev teorem. Postoji više dokaza ovog teorema, a najjednostvniji je uz pomoć Greenove formule: dxdy. int C i Cauchy Riemannovih uvjeta.

1 Promjena baze vektora

Matematika 1 - vježbe. 11. prosinca 2015.

Sortiranje prebrajanjem (Counting sort) i Radix Sort

PARCIJALNI IZVODI I DIFERENCIJALI. Sama definicija parcijalnog izvoda i diferencijala je malo teža, mi se njome ovde nećemo baviti a vi ćete je,

1.4 Tangenta i normala

Apsolutno neprekidne raspodele Raspodele apsolutno neprekidnih sluqajnih promenljivih nazivaju se apsolutno neprekidnim raspodelama.

VJEROJATNOST I STATISTIKA Popravni kolokvij - 1. rujna 2016.

Zavrxni ispit iz Matematiqke analize 1

MATRICE I DETERMINANTE - formule i zadaci - (Matrice i determinante) 1 / 15

PRIMJER 3. MATLAB filtdemo

Funkcija gustoće neprekidne slučajne varijable ima dva bitna svojstva: 1. Nenegativnost: f(x) 0, x R, 2. Normiranost: f(x)dx = 1.

INTELIGENTNO UPRAVLJANJE

41. Jednačine koje se svode na kvadratne

Elementi spektralne teorije matrica

Pismeni ispit iz matematike GRUPA A 1. Napisati u trigonometrijskom i eksponencijalnom obliku kompleksni broj, zatim naći 4 z.

radni nerecenzirani materijal za predavanja

1. Duljinska (normalna) deformacija ε. 2. Kutna (posmina) deformacija γ. 3. Obujamska deformacija Θ

Vježba: Uklanjanje organskih bojila iz otpadne vode koagulacijom/flokulacijom

III VEŽBA: FURIJEOVI REDOVI

IZVODI ZADACI (I deo)

π π ELEKTROTEHNIČKI ODJEL i) f (x) = x 3 x 2 x + 1, a = 1, b = 1;

Pismeni ispit iz matematike Riješiti sistem jednačina i diskutovati rješenja sistema u zavisnosti od parametra: ( ) + 1.

I.13. Koliki je napon između neke tačke A čiji je potencijal 5 V i referentne tačke u odnosu na koju se taj potencijal računa?

Računarska grafika. Rasterizacija linije

SEMINAR IZ KOLEGIJA ANALITIČKA KEMIJA I. Studij Primijenjena kemija

IspitivaƬe funkcija: 1. Oblast definisanosti funkcije (ili domen funkcije) D f

Uvod u neparametarske testove

Veleučilište u Rijeci Stručni studij sigurnosti na radu Akad. god. 2011/2012. Matematika. Monotonost i ekstremi. Katica Jurasić. Rijeka, 2011.

21. ŠKOLSKO/OPĆINSKO/GRADSKO NATJECANJE IZ GEOGRAFIJE GODINE 8. RAZRED TOČNI ODGOVORI

PT ISPITIVANJE PENETRANTIMA

Deformacije. Tenzor deformacija tenzor drugog reda. Simetrinost tenzora deformacija. 1. Duljinska deformacija ε. 1. Duljinska (normalna) deformacija ε

Kontrolni zadatak (Tačka, prava, ravan, diedar, poliedar, ortogonalna projekcija), grupa A

- pravac n je zadan s točkom T(2,0) i koeficijentom smjera k=2. (30 bodova)

BIPOLARNI TRANZISTOR Auditorne vježbe

NOMENKLATURA ORGANSKIH SPOJEVA. Imenovanje aromatskih ugljikovodika

XI dvoqas veжbi dr Vladimir Balti. 4. Stabla

Pošto pretvaramo iz veće u manju mjernu jedinicu broj 2.5 množimo s 1000,

( , treći kolokvij) 3. Na dite lokalne ekstreme funkcije z = x 4 + y 4 2x 2 + 2y 2 3. (20 bodova)

2. Ako je funkcija f(x) parna onda se Fourierov red funkcije f(x) reducira na Fourierov kosinusni red. f(x) cos

7 Algebarske jednadžbe

PARNA POSTROJENJA ZA KOMBINIRANU PROIZVODNJU ELEKTRIČNE I TOPLINSKE ENERGIJE (ENERGANE)

Algoritmi i strukture podataka (450)

PISMENI ISPIT IZ STATISTIKE

POTPUNO RIJEŠENIH ZADATAKA PRIRUČNIK ZA SAMOSTALNO UČENJE

Novi Sad god Broj 1 / 06 Veljko Milković Bulevar cara Lazara 56 Novi Sad. Izveštaj o merenju

Zadaci iz trigonometrije za seminar

Grafičko prikazivanje atributivnih i geografskih nizova

2.2 Srednje vrijednosti. aritmetička sredina, medijan, mod. Podaci (realizacije varijable X): x 1,x 2,...,x n (1)

Linearna algebra 2 prvi kolokvij,

FTN Novi Sad Katedra za motore i vozila. Teorija kretanja drumskih vozila Vučno-dinamičke performanse vozila: MAKSIMALNA BRZINA

PRAVAC. riješeni zadaci 1 od 8 1. Nađite parametarski i kanonski oblik jednadžbe pravca koji prolazi točkama. i kroz A :

PROSTORNI STATIČKI ODREĐENI SUSTAVI

Funkcije dviju varjabli (zadaci za vježbu)

Mašinsko učenje. Regresija.

Program za tablično računanje Microsoft Excel

Teorijske osnove informatike 1

Riješeni zadaci: Limes funkcije. Neprekidnost

Transcript:

PRIMJENA RAČUNA REDOVA ČEKANJA POMOĆU ERLANG DISTRIBUCIJA ZA WEB APLIKACIJE Dubravko Miljković Hrvatska elektroprivreda Zagreb, Vukovarska 37

UVOD Ograničeni broj uslužnih kanala (ponekad samo jedan) Kako procijeniti dopušteno opterećenje Kako odrediti potreban broj uslužnih kanala Kako odrediti potrebnu brzinu usluge uslužnih kanala 19. listopad 2012. HROUG 2012 2

UVOD Ponekad određena aktivnost može se na jednom serveru odvijati samo za jednog korisnika Rješenje Povećati broj servera (npr. Reports engine, cluster node itd.) Skratiti vrijeme aktivnosti (promjena metode, koda itd.) 19. listopad 2012. HROUG 2012 3

AGNER KRARUP ERLANG Danski matematičar, statističar i inženjer (1878-1929) Teorija redova čekanja Računao udio korisnika koji moraju čekati na uspostavu poziva van sela budući da su sve linije zauzete Vjerojatnost neuspješnog poziva je prihvaćena od British Post Office kao osnova za proračun kapaciteta telefonskih postrojenja 19. listopad 2012. HROUG 2012 4

TELEKOMUNIKACIJE Velika primjena u telekomunikacijama Telefonske centrale Call centri Dolazak telefonskih poziva slijedi Poissonovu razdiobu Vrijedi i za korisnike web aplikacija 19. listopad 2012. HROUG 2012 5

REDOVI ČEKANJA Sustav poslužuje dolazne zahtjeve Sustav je konačnih mogućnosti Postoji red čekanja dok se ne oslobodi uslužni kanal 19. listopad 2012. HROUG 2012 6

ERLANG DISTRIBUCIJA Kontinuirana distribucija, ima pozitivne vrijednosti za sve realne brojeve veće od nule Definirana sa dva parametra shape k rate λ Posebni slučaj Gamma distribucije Događaji koji se javljaju neovisno s nekom prosječnom frekvencijom modelirani su kao Poissonov proces Vremena čekanja između k pojava događaja su distribuirana u skladu s Erlang distribucijom f ( x; k, λ ) = k k 1 λ x e ( k 1)! λ x 19. listopad 2012. HROUG 2012 7

ERLANG DISTRIBUCIJA Agner Krarup Erlang puno se bavio modeliranje komunikacijskog prometa Postoje još dvije Erlang distribucije koje se koriste za modeliranje prometa: Erlang B i Erlang C Odustaje se od neopsluženih zahtjeva za uslugom, "target service (Erlang B formula) Neopsluženi zahtjevi za uslugom ulaze u red čekanja sve dok se ne opsluže (Erlang C formula) 19. listopad 2012. HROUG 2012 8

WEB APLIKACIJE Koriste ograničene računarske resurse Forms sesije Reports serveri Host komande Komunikacija s File server-om Komunikacija s Print server-om Printeri Print job-ovi i red čekanja Terminal server Aplikacije koje dopuštaju pokretanje samo jedne instance Licence 19. listopad 2012. HROUG 2012 9

SYSTEM STRESS TESTING Testiranje performansi sustava pod opterećenjem Testiranje je fokusirano na robusnost aplikacije, raspoloživost i pouzdanost pod ekstremnim uvjetima Pronalazi odgovore na pitanja: Koje vrijeme odziva će postizati korisnici? Kako dugo sustav može izdržati povećanu aktivnost korisnika? Kako često će se korisnici susretati s pogreškama na sustavu i trebati se rekonektirati? Može li se sustav vratiti sam u normalno stanje nakon stress testa s abnormalnim opterećenjem? 19. listopad 2012. HROUG 2012 10

PERFORMANCE/LOAD/ STRESS TESTER Load test pod izuzetnim opterećenjem stress test Uređaj (kombinacija hardware i software) koje simulira opterećenje sustava Koristi se za određivanje stabilnosti sustava pod opterećenjem Simulira simultani dolazak korisnika sa odvojenih PC strojeva (različite IP adrese) Vrlo dobre procjene, ali Skupi uređaji Alternativa je skupi najam 19. listopad 2012. HROUG 2012 11

ERLANG Bezdimenziona jedinica koja se koristi u telefoniji kao statistički pokazatelj telekomunikacijskog prometa Definira se kao iskorištenost kanala u vremenu "Erlang" je korišten u skandinavskim zemljama i označava jedinicu telefonskog prometa Međunarodno priznanje slijedilo je nakon kraja drugog svjetskog rata 19. listopad 2012. HROUG 2012 12

ERLANG Primjer: 30 poziva po satu Prosječno trajanje poziva 5 min Minuta prometa u satu = Broj poziva x Trajanje Minuta prometa u satu = 30 x 5 Minuta prometa u satu = 150 Sati prometa u satu = 150 / 60 Sati prometa u satu = 2.5 Erlanga 19. listopad 2012. HROUG 2012 13

ERLANG Koliko je elemenata potrebno za pružanje usluge bez predimenzioniranja Potrebno definirati ciljne vrijednosti: GoS - Grade of Service QoS - Quality of Service Parametri Vjerojatnost blokiranja usluge p=0.05 prihvatljivo p=0.01 dobro Vrijeme čekanja na uslugu (npr. 80% zahtjeva ispod 10s) Vrijednosti potrebno je definirati za Busy Hour Glavni prometni sat (sat s najvećim prometom, peak hour) Najveći broj zahtjeva za uslugom (worst case analysis) BHT (Busy Hour Traffic) 19. listopad 2012. HROUG 2012 14

ERLANG B p B ( A, m) p A m p m! = m i Ap i= 0 i! pri čemu je p B - vjerojatnost da će zahtjev biti odbijen (vjerojatnost da su svi poslužitelji zauzeti) m broj poslužitelja A - promet (Erlang-a) 19. listopad 2012. HROUG 2012 15

ERLANG C Λ intenzitet dolazaka (prosječan broj korisnika koji pristižu u jedinici vremena) p C ( A, m) p = A m p A + m! 1 m p A p m A m 1 i p i= 0 i! pri čemu je p C - vjerojatnost da će zahtjev biti odbijen (vjerojatnost da su svi poslužitelji zauzeti) m broj poslužitelja A - promet (Erlang-a) 19. listopad 2012. HROUG 2012 16

ERLANG KALKULATORI Besplatni WEB kalkulatori Jednostavni za korištenje Zadovoljavaju većinu potreba Ne zahtijevaju detaljno poznavanje teorije, samo operativno specifikacija prometa u Erlang jedinicama kod nekih kalkulatora) Erlang B Extended Erlang B Erlang C Programi Erlang CC Modeler Lite besplatan Erlang CC Modeler Pro 19. listopad 2012. HROUG 2012 17

ERLANG B WEB Erlang B kalkulator Busy Hour Traffic (Promet glavnog sata) Vjerojatnost blokiranje prometa ovisno o opterećenju Broj uslužnih agenata za prihvatljivu vjerojatnosti blokiranja 19. listopad 2012. HROUG 2012 18

EXTENDED ERLANG B WEB Extended Erlang B kalkulator Dodatna mogućnost specificiranja Recall Factor-a Korisnici koji nakon neuspjeha odmah pokušavaju ponovo (immediate retry attempt) Aplikacija sa ugrađenom petljom za retry 19. listopad 2012. HROUG 2012 19

ERLANG C WEB Erlang C kalkulator Treba specificirati barem tri parametra Pri tome specificirati barem dva od prva tri polja unosa 19. listopad 2012. HROUG 2012 20

ERLANG CC MODELER LITE Za detaljniju analizu postoje posebni programi Grafički prikaz Očekivani boravak u redu čekanja Prosječno čekanje ovisno o broju uslužnih agenata 19. listopad 2012. HROUG 2012 21

VARIJACIJE PROMETA Promet nije konstantan Varira tijekom dana i noći Analiza moguća uz pomoć naprednijeg Erlang software-a (Erlang CC Modeler Pro) 19. listopad 2012. HROUG 2012 22

ERLANG CC MODELER PRO Uključuje dnevne varijacije prometa Broj potrebnih agenata tijekom dana 19. listopad 2012. HROUG 2012 23

KADA KORISTITI ERLANG B, A KADA ERLANG C ERLANG B Usluga je blokirana, ali korisnik ne ulazi u red čekanja ERLANG C Usluga je blokirana, korisnik ulazi u red čekanja dok se ne oslobodi uslužni kanal (agent) 19. listopad 2012. HROUG 2012 24

DIMENZIONIRANJE ias SERVERA FORMS SESIJE Ukupan broj uspostava Forms sesija (Busy Hour) Prosječno trajanje Forms sesije Najveći istovremeni broj korisnika Forms sesija Dopuštena vjerojatnost blokiranja kod uspostave sesije Erlang B Određivanje ukupnog broja uspostava sesija tijekom Bussy hour-a BHT produkt broja uspostava sesija i prosječnog trajanja sesije Određivanje vjerojatnosti blokiranja kod uspostave sesije za zadani promet 19. listopad 2012. HROUG 2012 25

REPORTS SERVERI In-process reports server Na starim ias-ima 1.0.2 Forms 6 in-process reports server može opsluživat istovremeno samo jedan job (ekvivalent jedne reports engine) Stand alone reports server Kako odrediti broj reports engine-a Premalo engines uzrokuje formiranje repova Previše engines nepotrebno zauzima memoriju instance ias-a (smanjuje broj mogućih Forms sesija) 19. listopad 2012. HROUG 2012 26

REPORTS SERVERI Procjena vremena trajanja report-a uz pomoć Task manager-a (Sysinternals) Ulazni podataka za Erlang kalkulator 19. listopad 2012. HROUG 2012 27

DIMENZIONIRANJE REPORTS SERVERA Primjer 1 1000 reporta po satu vrijeme izvođenja reporta 10s 1 reports engine 19. listopad 2012. HROUG 2012 28

DIMENZIONIRANJE REPORTS SERVERA Primjer 2 1000 reporta po satu vrijeme izvođenja reporta 10s 3 reports engine 19. listopad 2012. HROUG 2012 29

DIMENZIONIRANJE REPORTS SERVERA Primjer 3 1000 reporta po satu vrijeme izvođenja reporta 10s 7 reports engine 19. listopad 2012. HROUG 2012 30

DIMENZIONIRANJE REPORTS SERVERA Primjer 4 1000 reporta po satu vrijeme izvođenja reporta 10s Service level: 98% čeka manje od 5s Potrebno 6 agenata (reports engines) 19. listopad 2012. HROUG 2012 31

HOST COMMAND Istovremeno pokretanje instanci programa pomoću HOST komande Drugo pokretanje ne uspijeva Run-as (?), Sysinternals utilities Ponekad pomaže RENAME trik 1st instance -> run original App.exe 2nd instance -> run coppied App_1stCopy.exe 3rd instance -> run 2nd coppied App_2ndCopy.exe 19. listopad 2012. HROUG 2012 32

HOST COMMAND Ponekad nije moguće istovremeno pokrenuti više istih HOST komandi na istom serveru Najveći broj korisnika aplikacije na nodu uz prihvatljivo blokiranje zahtjeva Preostaje nam smanjivanje vremena koje zauzima dotična HOST komanda Npr. 100 zahtjeva po satu, trajanje zahtjeva 5 sekundi Vjerojatnost blokiranja uz 1 uslužni kanal čak 12% (u praksi previše!) Rješenje: skratiti vrijeme komande ili raspršiti korisnike po nodovima NLB clustera 19. listopad 2012. HROUG 2012 33

FILE SERVER Jedan korisnik s istog ias-a može pristupiti na file server Ne mogu dva korisnika istovremeno s istog ias-a Može i više njih, ali ne sa istog ias-a (NLB) Programi za PDF pretraživanje instalirani na File Serveru mogu dodati problematiku HOST komande Npr. Dopuštena vjerojatnost blokiranja p=0.05 BHT 0.05 Ekvivalentno 200 zahtjeva u trajanju 0.9 s ili 100 zahtjeva od 1.8 s 19. listopad 2012. HROUG 2012 34

PRINT SERVER Jedan korisnik sa istog ias-a može pristupiti na print server Ne mogu dva korisnika istovremeno s istog ias-a Može i više njih, ali ne sa istog ias-a (NLB) Koliko dugo smije trajati komunikacija s Print Serverom za dati promet i prihvatljivu vjerojatnost blokiranja zahtjeva za komunikacijom Erlang B 19. listopad 2012. HROUG 2012 35

PRINTANJE Ispis na jedan ili više (linijski?) štampača Formiranje redova čekanja Koliko štampača trebamo Koliko čekamo u redu za ispis 19. listopad 2012. HROUG 2012 36

PRINTANJE Broj print job-ova po satu (busy hour) Prosječno trajanje print job-a Broj raspoloživih printera Erlang C (postojanje reda čekanja - queue) 19. listopad 2012. HROUG 2012 37

NLB CLUSTER Više kanala usluge možemo postići i formiranjem NLB clustera Kad iscrpimo mogućnost smanjivanja vremena usluge po kanalu možemo dodati novi kanal dodavanjem novog noda u NLB cluster 19. listopad 2012. HROUG 2012 38

TERMINAL SERVER Pokušaj istovremenog pokretanje instance programa koji za to nije predviđen Određivanje mogućnosti kolizije Uporaba clustera s više nodova Erlang B Npr. Dopuštena vjerojatnost blokiranja 0.05 BHT 0.05 Ekvivalentno 5 zahtjeva u trajanju 36s 19. listopad 2012. HROUG 2012 39

TERMINAL SERVER Uporaba terminal servera s ograničenim brojem licenci Prosječno trajanje sesije Broj licenci (concurrent) Vjerojatnost blokiranja usluge (log-in) Erlang B (nema reda čekanja) Primjenjivo i na neke druge klijent-server programske pakete s ograničenim brojem concurrent licenci 19. listopad 2012. HROUG 2012 40

ZAKLJUČAK Omogućuje inicijalno dimenzioniranje sustava koje se kasnije fino podesi Primjena Erlang B i Erlang C kalkulatora Procjena broja korisnika za prihvatljivo vrijeme čekanja Procjena vremena čekanja korisnika pod opterećenjem Procjena potrebnog broja uslužnih kanala Procjena vjerojatnosti blokiranja usluge 19. listopad 2012. HROUG 2012 41

HVALA!