Ramine
unread,Mar 12, 2016, 11:52:08 AM3/12/16You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
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.