我有一個Django網站,它運行幾個uwsgi進程,隱藏nginx服務器。 現在我試圖做的是,這幾個Django實例共享一個變量,修改它並將其顯示在視圖函數中。這個怎麼做?如何:多個Django實例共享一個全局變量?
global_v = [1,2,3]
python manage.py runserver 8000
python manage.py runserver 8001
python manage.py runserver 8002
....
我有一個Django網站,它運行幾個uwsgi進程,隱藏nginx服務器。 現在我試圖做的是,這幾個Django實例共享一個變量,修改它並將其顯示在視圖函數中。這個怎麼做?如何:多個Django實例共享一個全局變量?
global_v = [1,2,3]
python manage.py runserver 8000
python manage.py runserver 8001
python manage.py runserver 8002
....
如果共同文件或數據庫是因爲某些原因可以接受的,您可以使用Memcached的(或其他緩存系統):在多個服務器
...共享緩存
From here。
編輯:一個可能替代打火機:
使用共享存儲器雖然Python IPC modules。請注意,您將不得不使用信號量來序列化訪問,並手動醃製/取消數據,因爲接口只是一個文件句柄。
該解決方案太重?我所尋找的只是一個臨時和可共享的列表... – longnight 2014-08-30 01:12:13
當然,對於單個變量,它顯然太重了。但我只記得共享內存這樣的東西,所以請檢查更新的答案替代。 – 2014-08-30 20:06:52
如何使用相同的數據庫? – levi 2014-08-29 16:43:21
將信息存儲在通用數據庫或磁盤上的通用文件中。 – 2014-08-29 16:43:59
如何使這個設置變量,並執行'django.conf導入設置'和'settings.GLOBAL_V'? – karthikr 2014-08-29 16:55:20