измените цикл for
for c in range (r, 1, int(-r/num_circles))
на for c in range (r, int(r/num_circles), int(-r/num_circles))
, чтобы он достиг минимума вместо 1.
if r>=50 or r<=200: #if radius is in range, draw circles
for c in range (r, int(r/num_circles), int(-r/num_circles)):
turtle.fillcolor(random.random(),random.random(),\
random.random()) #circles will be a random color
turtle.begin_fill()
turtle.circle(c)
turtle.penup()
turtle.left(90) #concentric
turtle.forward(r/num_circles)
turtle.right(90)
turtle.pendown()
turtle.end_fill()
turtle.hideturtle()
time.sleep(5)
turtle.clear() #clears screen
Технически, я верю тому, что Вы хотите сделать, возможно, но я не был бы reccomend это. Существует несколько факторов, которые необходимо рассмотреть перед потерей работоспособности по этому пути.
У Вас есть аппаратные средства для поддержки его? Если у Вас не будет памяти для такой конфигурации, и необходимо разбить на страницы подкачку, то Вы, вероятно, потеряете большую часть преимущества скорости кэширования ее в памяти. Если Вы используете из сервера состояния процесса, то система имеет издержки контакта с сериализацией.
Как Вы планируете поиск чего-то в который много строк? Сервер базы данных обрабатывает большой поиск и сортировку для Вас негласно. Существуют некоторые довольно сложные алгоритмы, которые они используют, который Вы собираетесь потерять при кэшировании данных по веб-серверу.
Там не очень твердо быстрое правило относительно того, когда что-то быстрее в базе данных относительно настроенного против в памяти. Это действительно зависит от того, как приложение является установкой и как данные хранятся.
Вы говорите, что они главным образом смотрят на одну таблицу, и ту таблицу вытягивают от 200 до 600K строк. Как часто ту таблицу вытягивают? Действительно ли это - сценарий типа "домашней страницы", где пользователи главным образом смотрят на первую страницу данных? Почему кэшируют все 200K строки, почему не кэшируют первые 20?
Вы уверены, что хотите сохранить это в Состоянии сеанса? Я предпочел бы Состояние приложения, если они будут использовать ту же базу данных, этот путь всего, то один набор данных будет сохранен в памяти.
Я думаю, что пределом памяти управляет IIS. Существует Максимальная виртуальная память и Максимальные используемые пределы памяти. Не забывайте проверять наличие данных.
Проверьте это: Конфигурирование Приложений ASP.NET в Режиме Изоляции Рабочего процесса (IIS 6.0)
Можно ли разъясниться для меня - Вы говорите, что пользователь получает таблицу данных 20 записей, которая уникальна для того пользователя, и действительно ли результатом запросов является 600K таблица? Действительно ли записи статичны для пользователя?
Если существует только 20 записей, которые остаются статичными, после того как они связаны с пользователем, можно ли создать сериализованные объекты, которые могут переданный потоком пользователю по запросу? Таким образом, поместите их в состояние, где они готовы пойти так, Вы не должны поражать DB.