вопрос о Литтлс Лоу - PullRequest
3 голосов
/ 07 июня 2010

Я знаю, что Закон Литтла гласит (перефразируя):

среднее количество вещей в системе является произведением средней скорости, с которой вещи покидают систему исреднее время, которое каждый из них проводит в системе, или:

n=x*(r+z);
x-throughput
r-response time
z-think time
r+z - average response time

теперь у меня есть вопрос о проблеме из программирования жемчужины :

Предположим, что система делает 100 обращений к диску для обработки транзакции (хотя некоторые системы требуют меньше, некоторым системам потребуется несколько сотен обращений к диску на транзакцию).Сколько транзакций в час на диск может обработать система?Предположение: доступ к диску занимает 20 миллисекунд.

Вот решение этой проблемы

Игнорирование замедления из-за очереди, 20 миллисекунд (времени поиска) на операцию на диске дает2 секунды на транзакцию или 1800 транзакций в час

Я запутался, потому что не понял решения этой проблемы, пожалуйста, помогите

1 Ответ

3 голосов
/ 07 июня 2010

Будет более интуитивно понятно, если вы забудете об этой формуле и будете думать, что скорость, с которой вы можете что-то делать, обратно пропорциональна времени, которое у вас уходит на это. Например, если вы едите пиццу в течение 0,5 часа, вы едите пиццу со скоростью 2 пиццы в час, потому что 1 / 0,5 = 2.

В этом случае скорость - это количество транзакций за раз, а время - сколько времени занимает транзакция. В соответствии с проблемой транзакция требует 100 обращений к диску, а каждый доступ к диску занимает 20 мс. Поэтому каждая транзакция занимает всего 2 секунды. Тогда скорость равна 1/2 = 0,5 транзакций в секунду.

Теперь, более формально:

Скорость транзакций в секундах R обратно пропорциональна времени транзакций в секундах TT.

R = 1/TT

Время транзакции TT в этом случае:

TT = disk access time * number of disk accesses per transaction =
20 milliseconds * 100 = 2000 milliseconds = 2 seconds

R = 1/2 transactions per second 
= 3600/2 transactions per hour
= 1800 transactions per hour
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...