Django下提交執行python指令,時區問題

2021-10-13 13:02:53 字數 705 閱讀 7568

使用django寫了乙個工具平台的web,平台通過提交乙個python指令,執行工具的功能。

有乙個指令碼會獲取本地時間,在使用過程中發現獲取的本地時間總是與實際的本地時間差8個小時。

將指令單獨拿出來的後台執行,是ok的,就是通過web提交指令的執行的時候有問題。

(1)django設定的時區為utc

(2)指令是通過popen執行的

django的時區,影響了其提交指令的執行時區,django時區設定的是utc,其獲取的本地時間與北京時間差8個小時。

popen執行的時候,設定的env為none,繼承了父程序(django的環境變數,時區為utc),所以指令執行是獲取的本地時間與本地北京時間差8個小時。

參考資料:

修改django的時區:time_zone = 『asia/shanghai』,重啟工具平台。

將系統環境變數傳給popen

env=os.environ.copy()

p = popen(runcmd.encode(scriptcode),shell=true,stdout=pipe,stderr=pipe,env=env)

Spark指令碼提交 執行 部署

執行spark shell需要指向申請資源的standalone spark集群資訊,其引數為master,還可以指定executor及driver的記憶體大小。sudo spark shell executor memory 5g driver memory1g master spark spar...

Spark指令碼提交 執行 部署

尊重版權,謝謝分享 執行spark shell需要指向申請資源的standalone spark集群資訊,其引數為master,還可以指定executor及driver的記憶體大小。sudo spark shell executor memory 5g driver memory1g master ...

29 非同步任務提交執行架構

非同步任務提交執行架構 類關係圖 示例 執行緒池提交runnable任務 示例 執行緒池提交callable任務 executor 執行緒提交介面 executor runnable c 將runnable任務提交到執行緒池中 executorservice 執行緒池介面 提交非同步任務方法 exe...