Форум сайта python.su
Сохраняет ли джанго состояние обьектов между двумя НТТР запросами?
например есть код:
class _Registry(object):
obj = None
def __new__(cls, *dt, **mp):
if cls.obj is None:
cls.obj = object.__new__(cls,*dt,**mp)
return cls.obj
Офлайн
gonandriyНа этот вопрос невозможно ответить однозначно, пока вы не расскажите каким образом вы джангу запускаете.
Сохраняет ли джанго состояние обьектов между двумя НТТР запросами?
Офлайн
Джангу запускаю через его сервер HTTP server (manage.py runserver)
Daevaornимеете ввиду через файловую систему или базу?
Через хранилища данных
Офлайн
gonandriyВ том числе.
имеете ввиду через файловую систему или базу?
Офлайн
gonandriyДа, в этом случае все запросы обрабатываются в одном процессе.
Джангу запускаю через его сервер HTTP server (manage.py runserver)
Офлайн
DaevaornА как в случае mod_wsgi для апача?
Да, в этом случае все запросы обрабатываются в одном процессе.
Офлайн
Как может бить видно из приведенного кода ето попытка сделать единый реестр объетков для всего приложения.
Мне кажеться ипользовать базу или файлы для етих целей слишком нерацынально.
Можно как то в памяти сделать общую область ?
Офлайн
gonandriyОпять-таки зависит от настроек.
А как в случае mod_wsgi для апача?
gonandriyГоворить о рациональности, видя этот код, я не могу. Всё очень сильно зависит от ваших задач и целей.
Мне кажеться ипользовать базу или файлы для етих целей слишком нерацынально.
Офлайн
Спасибо, Daevaorn
Я немного модифицировал скрипт і сейчас удаляю все поля пере завершением работы
Не подскажете как наиболее практично пеализовать синглетон на Python/Django?
Офлайн
gonandriyОбычно синглтон в питоне – это переменная на уровне модуля. Но она single в рамках одного процесса. Если приложение работает в нескольких процессах, то тут опять-таки надо шарить стейт через какое-то общее хранилище.
Не подскажете как наиболее практично пеализовать синглетон на Python/Django?
Офлайн