Если вы используете раздвоенный сервер, вы не сможете иметь синглтон вообще (по крайней мере, синглтон, который не дольше, чем ваш фактический контекст).
Для многопоточного сервера это должно быть возможно (но я не так уж много на Django и веб-серверах!).
Вы пробовали такой код (как дополнительный модуль):
# Singleton module
_my_singleton = None
def getSingleton():
if _my_singleton == None:
_my_singleton = ...
return _my_singleton
В точках дерева ("...") вы, конечно, должны добавить кодирование для создания вашего одиночного объекта.
Это еще не продуктивный код, но вы можете использовать его, чтобы проверить, будут ли синглеты работать вообще с вашей средой. Для синглетонов возможно только с неким «глобальным хранилищем» под рукой. Разветвленные серверы делают это более сложным.
В случае, если «обычное глобальное хранилище» не работает, возможна другая возможность. Вы можете сохранить свой синглтон в файловой системе, используя возможности сериализации Pythons. Но, конечно, это было бы намного труднее!