Python3文件編譯及後臺運行方法

一、編譯pyc文件:

1. 終端命令:
python3 -m py_compile test.py
2.也可通過創建compilepyc.py文件:
import compileall
compileall.compile_dir("test.py)

運行:

python3 compilepyc.py

二、編譯.so文件:

創建compileso.py文件:

from distutils.core import setup
from Cython.Build import cythonize
setup(
    ext_modules = cythonize(["test1.py", "test2.py"])
)

運行以下命令即可生成後綴爲so的文件:

python3 compileso.py build_ext --inplace

文件名發生變化,Ubuntu系統下批量重命名方法:

rename -v 's/.cpython-35m-x86_64-linux-gnu.so/.so/' *

將所有後綴名.cpython-35m-x86_64-linux-gnu.so的文件後綴名改爲.so,可根據自己需要修改

Centos系統下批量重命名方法:

rename .cpython-35m-x86_64-linux-gnu.so .so *

三、python3文件後臺運行方法

1. 通過python命令後臺運行,並將保存日誌文件:

 python3 test.py > 20190211.log 2>&1 &
殺死後臺進程兩種方法:
a. pkill -9 python3
b. 通過殺死進程ID

查看當前進程數量:

ps -A  |grep  python3|wc  -l

查看當前python進程:

ps -axjf  |grep  python3

然後運行命令:kill -9 +進程ID

2.gunicorn配合flask後臺運行python文件

可使用終端命令:
gunicorn -w 4 -b 0.0.0.0:8080 main:app

-w:表示開啓多少個進程
-b:表示gunicorn開放訪問的地址

也可使用gunicorn配置文件:

創建配置文件gunicorn.conf:

workers = 4
# 進程數量
bind = '172.18.136.123:7002' 
# 服務端IP及端口
daemon = 'True' 
# 設置守護進程【關閉連接時,程序仍在運行】 
timeout = 30 
# 設置超時時間30s。按自己的需求進行設置 
accesslog = './logs/acess.log' 
errorlog = './logs/error.log'
# 設置訪問日誌和錯誤信息日誌路徑 

從配置文件啓動命令:

gunicorn -c gunicorn.conf main:app
關閉gunicorn進程:

命令查看進程ID:

pstree -ap | grep gunicorn
kill -9 ID
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章