Flask Celery 基本案例 01

2021-10-03 17:28:13 字數 1215 閱讀 3165

win10

python3.7

flask 1.1.1

celery 4.4.1

virtualenv venv --no-site-packages
# 啟用虛擬環境

.\venv\scripts\activate

pip install flask==1.1.1 celery==4.4.1 redis

# 安裝gevent, 作為執行celery的附加元件(可選)

pip install gevent

# 安裝python-dotenv,用於從.flaskenv中載入flask的環境變數

pip install python-dotenv

專案結構如下,非常簡單

**傳送門

backend.__init__.py的內容如下,讓flask收到請求後,呼叫函式write_something_to_file,這個函式將會由celery執行

from flask import flask

from backend.sched.tasks import write_something_to_file

'/celery'

, methods=

['get'])

deftest_celery()

: write_something_to_file(

)return

'ok'

,200

開啟兩個命令列終端,均啟用虛擬環境,進入到專案所在資料夾,

即包含上圖中backend的資料夾

終端1執行flask run,啟動flask應用

終端2執行如下命令,啟動celery程序

# -a 後指定celery.py所在的包

# --concurrency=4 設定併發量為4

celery -a backend.sched worker -l info -p gevent --concurrency=4

開啟瀏覽器,輸入

執行成功時,將會在專案內看到乙個hello.txt,這是在flask收到請求後,利用celery生成的。

Flume基本案例

採集檔案到hdfs 採集需求 某伺服器的某特定目錄下,會不斷產生新的檔案,每當有新檔案出現,就需要把檔案採集到hdfs中去 根據需求,首先定義以下3大要素 配置檔案編寫 cd export servers apache flume 1.6.0 cdh5.14.0 bin conf mkdir p e...

shell指令碼案例

bin bash for迴圈的使用 for num in 1 2 3 4 5 6 do echo num done bin bash a whoami read p 請輸入想要驗證的使用者名稱 b if b a then echo 是當前使用者 else echo 不是當前使用者,需示警 fi bi...

shell指令碼案例賞析

bin bash 用法 rebatch.sh 截止到月份的日期 例如 rebatch.sh 2014 06 etc profile bashrc arg 1 start date 01 end date 01 count 1 cat dev null log file db2 o connect t...