[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.programming.threads

Mathematical modeling of ecommerce websites

Ramine

3/12/2016 7:53:00 PM

Hello............

Here is my ecommerce websites mathematical queuing theory
modeling that is good approximation:

A -> M/G/c database server queue -> M/M/1 Network queue -> M/M/1 Client -> A

The M in M/G/c means markovian distribution of the arrivals to the
M/G/c queue and the G in M/G/c is a general distribution of the service.

A is the arrival rate to the network of queues.

M/G/c database server has an hyper-exponential service, i think
that to not get into simulation, since many ecommerce websites
have read-mostly workloads, the hyper-exponential service of the
M/G/c queue can be approximated with an M/M/n queue when the
writer and the delete transactions are less or equal to 30% of
the total transactions and the ecommerce website has read-mostly workloads.

And now i will give you the mathematical equations of the M/G/c
queue that has an hyper-exponential service that permit us to
model a database server, here they are:

The mean that is the the mean time of the service of each queue
of the M/G/c queue is:

M1 = p1/a + p2/b + p3/c [1]

and the second moment of each queue is:

M2 = 2*p1/a^2 + 2*p2/b^2 + 2*p3/c^2

and the variance of each queue is:

variance = M2 - M1^2

a , b and c are the service rates of the different transactions
such us read,write, delete.

and p1 , p2 and p3 are the percentage of the transactions.

And when you calculate and get M1 you will then calculate the
mean service time that is 1/M1 and you will plug it on your M/M/c
queue that is an approximation of the M/G/n queue of the database
server that has an hyper-exponential service on read-mostly workloads,
using the arrival rate.

So for the M/M/c queue we have that:

A good approximation of waiting time of the M/M/c queue is:

D = Phi^c / Mu*(1 - Phi^c) [2]

Phi: is the utilization
and Mu: is the the service rate in each queue.

Phi = U(Density of circulation) / c (number of servers in the M/M/c queue)

U = Lambda / Mu

Lambda is the arrival rate A to the M/M/c queue

and Mu is the service rate of each queue of the M/M/C queue.

And the response time of the M/M/c queue is:

R = D + 1/Mu

and the perceived throughput of the M/M/c queue that is Pt = 1/R

And the mean number of transactions on the system is:

Ns = Lamda*R

Lambda is the arrival rate to the M/M/c queue.

And the mean number of transactions on the M/M/c waiting queue is:

Nq = Lambda*D

So from the above equation [1] we get the service rate of each
queue of the M/M/c queue of the database server that is: 1/M1

so we plug that in equation [2] of the M/M/c queue, so we get:

D = Phi^c / ((1/M1)*(1 - Phi^c))

So we get the response time of the M/M/c that is:

R = D + 1/(1/M1) => R = D + M1.

For the other M/M/1 queues of the Network queue and the client queue
we have the following equation:

The waiting time of M/M/1 queue is:

D =Phi / (1- Phi)

and Phi = Lambda / Mu

Lambda is the arrival rate A

and Mu is the service rate of the M/M/1 queue.

And you have to not forget that in the M/M/1 Network queue
you have a protocol overhead that is approximatly equal to 20%
so you have to multiply the mean size of the files to be transferred on
the M/M/1 Network queue by 120% and calculate after that the service
rate of the M/M/1 Network queue. And you have to not forget about the
Knee of the M/M/c queue of the database server that is equal to 74% and
the Knees of the other M/M/1 queues that is equal to 50%.

So since the queues of the ecommerce website to be modeled are organized
in a serial manner, so the calculations are easy now, so i will let you
do the calculations easily now.


Thank you,
Amine Moulay Ramdane.










5 Answers

fir

12/8/2011 8:40:00 AM

0

<fir@gazeta.SKASUJ-TO.pl> napisa?(a):

> Jordan Szubert <usenet@joru.us.to> napisa?(a):
>
> > Dnia 07-12-2011 o 19:43:09 profesor fire <fir@gazeta.skasuj-to.pl> =
> >
> > napisa=C5=82(a):
> >
> > [8<]
> > > jak to nazwac?
> >
> > jak to nazwa=C5=82em =E2=80=9Epodej=C5=9Bcie analityczne vs numeryczne=E2=
> > =80=9D, ale nie wiem, czy =
> >
> > poprawnie.
> >
> > numeryczne ma te zalet=C4=99, =C5=BCe jest r=C3=B3wnie proste, nawet gdy=
> > masz zmienn=C4=85 =
> >
> > grawitacje (np. obliczenia w skali kosmicznej, na orbicie przyci=C4=85ga=
> > nie =
> >
> > Ziemi ju=C5=BC jest istotnie r=C3=B3=C5=BCne ni=C5=BC na powierzchni, z,=
> > a i na r=C3=B3=C5=BCnych =
> >
> > punktach powierzchni kierunek jest inny), tarcie etc.
> > analityczne ma t=C4=99 zalet=C4=99, =C5=BCe jest dok=C5=82adne, ale jak =
> > chcesz za du=C5=BCo rzeczy =
> >
> > pouwzgl=C4=99dnia=C4=87 to r=C3=B3wnania si=C4=99 robi=C4=85 skomplikowa=
> > ne, nawet zanim je =
> >
> > zaczniesz rozwi=C4=85zywa=C4=87 (i nie jestem pewien, czy te r=C3=B3wnan=
> > ia w og=C3=B3le maj=C4=85 =
> >
> > rozwi=C4=85zania)
> >
>
> dosyc dobra odpowiedz na pewno idzie blizej w kierunku
> nazwania i wyrazenia o co chodzi, acz mz jeszcze
> niezupelnie dokladnie (choc ew mozna pewnie uzywac
> jesli rozmawiajacy wie o co chodzi)
>
> niezupelnie dokladnie mz bo analityczne to niekoniecznie
> musi byc chyba analityczne w ten sposob o jakim mowie,
> podobnie numeryczne tez nie musi byc dokladnie numeryczne
> w ten sposob o jakim mowie;
>
> troche problematycznie wlasnie jest nazwac te roznice, pierwsza
> to 'calosciowe' rozwiazywanie rownania (niby chyba analitycznie
> ale inne slowo mogloby byc lepsze) gdy drugie to wyliczanie go
> lokalnie/iteracyjnie w punktach
>
>
acha, jeszcze przypomnialo mi sie, ze w ten sposob nazywa
sie sposoby ropzwiazywania rownan wsrod matematykow na
uczelniach itp; o tyle zwlaszcza slowko numeryczne mialoby
inne znaczenie - bo tam jest o ile pamietam liczony
calosciowo stan ukladu po jakims czasie a tu chodzi
o updaty w realtime tj o ile tam sa przedstawione metody
'liczenia' to tutaj ja mowie o metodach 'symulacji'







--
Wys?ano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta....

RemeK

12/8/2011 8:41:00 AM

0

Dnia Thu, 8 Dec 2011 08:39:58 +0000 (UTC), fir@WYTNIJ.gazeta.pl napisa??(a):

> acha, jeszcze przypomnialo mi sie, ze w ten sposob nazywa
> sie sposoby ropzwiazywania rownan wsrod matematykow na
> uczelniach itp; o tyle zwlaszcza slowko numeryczne mialoby
> inne znaczenie - bo tam jest o ile pamietam liczony
> calosciowo stan ukladu po jakims czasie a tu chodzi
> o updaty w realtime tj o ile tam sa przedstawione metody
> 'liczenia' to tutaj ja mowie o metodach 'symulacji'

Bardziej bym to nazwal: naukowe i brute-force ;-)

--
pozdro
R.e.m.e.K

fir

12/8/2011 9:00:00 AM

0

> o updaty w realtime tj o ile tam sa przedstawione metody
> 'liczenia' to tutaj ja mowie o metodach 'symulacji'
>
przy czym, moge dodac, (odnoszac sie do tego co pisano w
watku o kulkach (ze matematycznie trudno lub niemozliwe
dokladnie, ze moga generowac ruch chaotyczny itp))
ze mi chodzi o nieco inne pojecie dokladnosci:

nie chodzi mi o to by zamodelowac 50 zderzajacych
sie kulek (o scisle zapodanych parametrach fizycznych)
w ten sposob by po 50 godzinach ruchu i po 5 milionach
wzajemnych zderzen pozycje koncowe nie odbiegaly od
dokladnosci matematyczno-fizycznych zasad na
piecdziesiatym miejscu po przecinku -

chodzi mi o to jak 'zalozyc' prosty i fajny model
ktory oddawalby fajnie np specyfike zderzen i ruchow
np z fizyki newtonowskiej i nie mialby 'dziur'

- bo czaasem jak sie pisze takie modele to pojawiaja
sie czasem takie dziury, np kulka moglaby sie zaklinowac
w rogu itp (mi wczesniej zdarzalo sie ze kulki jesli
po jednym odbiciu od razu wpadaly na druga kulke to
zlepialy sie, poprawilem to ale ciagle mam cos takiego
ze 1) klinuja sie czasem 2) robia nierealistyczne stosy

- choc w zamian za to potrafi tez ten model pokazywac
pare ciekawych zjawisk jak np jest zbita grupa kulek i
walnie w nie szybko lecaca kula z zewnatrz to cala ta
kula fizycznie sprezycie odbija sie (jakby eksploduje
mechanicznie od srodka)

kulki to chyba najprostszy model fizyki w 2d, a i tak
robi mi problemy, powinienem to przynajmniej skonczyc
na tyle by miec jakis dzialajace pudelko z fizyka z ktorego
moglbym byc zadowolony (ze ladnie dziala) - bo jak bez
tego startowac do ciekawszych rzeczy :/








--
Wys?ano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta....

fir

12/8/2011 9:14:00 AM

0

R.e.m.e.K <go@dev.null> napisa?(a):

> Dnia Thu, 8 Dec 2011 08:39:58 +0000 (UTC), fir@WYTNIJ.gazeta.pl napisa??(a):
>
> > acha, jeszcze przypomnialo mi sie, ze w ten sposob nazywa
> > sie sposoby ropzwiazywania rownan wsrod matematykow na
> > uczelniach itp; o tyle zwlaszcza slowko numeryczne mialoby
> > inne znaczenie - bo tam jest o ile pamietam liczony
> > calosciowo stan ukladu po jakims czasie a tu chodzi
> > o updaty w realtime tj o ile tam sa przedstawione metody
> > 'liczenia' to tutaj ja mowie o metodach 'symulacji'
>
> Bardziej bym to nazwal: naukowe i brute-force ;-)
>

jest cos na rzeczy ale tez mz nie jest to dobre
okreslenie

np 'brute-force' na okreslenie znanego najprostszego
sposobu liczenia kolizji (tj w podwojnej petli)
to mz koszmar; jedno ze zalatuje mentalnoscia
programistycznych pietnestolatkow (znana mi niestety
troche z warsztat.gd), drugie ze jest nieadekwatne bo
nie ma w tej metodzie zadnej brute force, to nie o force
chodzi a juz na pewno nie o brute tylko bardziej o
latwosc













--
Wys?ano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta....

fir

12/8/2011 10:08:00 AM

0

jeszcze zeby uscislich, chodzi o jeden krok
symulacji, np krok ruchu kulek ze stanu 'przed'
do stanu 'po'

obecnie sklaniam sie do nazwy 'analitycznie vs iteracyjnie'

te dwie metody sa warte rozwazenia bo sa spore roznice,

jak mowisz zaleta 'analitycznej' jest to ze wykonuje sie
raz i ze jest dokladna, wada jest to ze jest w pewnym sensie
matematycznie zagmatwana i czesto pewnie jest tak trudna
do napisania dokladnie ze wrecz niemozliwa;

wada iteracyjnej jest to ze wykonuje sie wiele razy
(moze wiec byc wolniejsza) i do tego jest dokladna z
dokladnoscia co do dyskretnego kroku - za to jest
prosta i mz w pewnym sensie 'prosta i elegancka'

co do nazwewnictwa to nie do konca jestem przekonany do
tego slowa 'analityczna' bo jak mowie slowo analityczna
ma chyba jakies inne znaczenia, (a na takie geometryczne
statyczne przeliczenia inne slowo mogloby pasowac lepiej),
acz od biedy mozna by tego uzywac, (na zasadzie tradycji
skoro tak sie juz zdaje sie w matematyce mowi)

tak ze poki nie spotkam sie z lepsza nazwa na razie
sklanialbym sie do uzywania 'analityczna vs iteracyjna'





--
Wys?ano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta....